3165: --
3166: -- bulk performance
3167: --
3168: l_balance_type_code VARCHAR2(1);
3169: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
3170: l_log_module VARCHAR2(240);
3171:
3172: --
3173: -- Upgrade strategy
3235: ') <> 'ENDORSEMENT'
3236: THEN
3237:
3238: --
3239: XLA_AE_LINES_PKG.SetNewLine;
3240:
3241: p_balance_type_code := l_balance_type_code;
3242: -- set the flag so later we will know whether the gain loss line needs to be created
3243:
3247:
3248: --
3249: -- bulk performance
3250: --
3251: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
3252: p_header_num => 0); -- 4262811
3253: --
3254: -- set accounting line options
3255: --
3252: p_header_num => 0); -- 4262811
3253: --
3254: -- set accounting line options
3255: --
3256: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
3257: p_natural_side_code => 'C'
3258: , p_gain_or_loss_flag => 'N'
3259: , p_gl_transfer_mode_code => 'S'
3260: , p_acct_entry_type_code => 'A'
3266: --
3267: --
3268: -- set accounting line type info
3269: --
3270: xla_ae_lines_pkg.SetAcctLineType
3271: (p_component_type => l_component_type
3272: ,p_event_type_code => l_event_type_code
3273: ,p_line_definition_owner_code => l_line_definition_owner_code
3274: ,p_line_definition_code => l_line_definition_code
3280: ,p_event_class_code => l_event_class_code);
3281: --
3282: -- set accounting class
3283: --
3284: xla_ae_lines_pkg.SetAcctClass(
3285: p_accounting_class_code => 'ADJ'
3286: , p_ae_header_id => l_ae_header_id
3287: );
3288:
3288:
3289: --
3290: -- set rounding class
3291: --
3292: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
3293: 'RECEIVABLE';
3294:
3295: --
3296: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
3292: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
3293: 'RECEIVABLE';
3294:
3295: --
3296: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
3297: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
3298: --
3299: -- bulk performance
3300: --
3293: 'RECEIVABLE';
3294:
3295: --
3296: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
3297: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
3298: --
3299: -- bulk performance
3300: --
3301: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
3297: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
3298: --
3299: -- bulk performance
3300: --
3301: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
3302:
3303: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
3304: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
3305:
3299: -- bulk performance
3300: --
3301: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
3302:
3303: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
3304: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
3305:
3306: -- 4955764
3307: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3303: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
3304: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
3305:
3306: -- 4955764
3307: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3308: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
3309:
3310: -- 4458381 Public Sector Enh
3311:
3337: l_rec_acct_attrs.array_num_value(10) := p_source_38;
3338: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
3339: l_rec_acct_attrs.array_char_value(11) := p_source_39;
3340:
3341: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
3342: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
3343:
3344: ---------------------------------------------------------------------------------------------------------------
3345: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3338: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
3339: l_rec_acct_attrs.array_char_value(11) := p_source_39;
3340:
3341: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
3342: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
3343:
3344: ---------------------------------------------------------------------------------------------------------------
3345: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3346: ---------------------------------------------------------------------------------------------------------------
3341: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
3342: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
3343:
3344: ---------------------------------------------------------------------------------------------------------------
3345: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3346: ---------------------------------------------------------------------------------------------------------------
3347: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3348:
3349: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3343:
3344: ---------------------------------------------------------------------------------------------------------------
3345: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3346: ---------------------------------------------------------------------------------------------------------------
3347: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3348:
3349: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3350: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3351:
3345: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3346: ---------------------------------------------------------------------------------------------------------------
3347: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3348:
3349: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3350: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3351:
3352: IF xla_accounting_cache_pkg.GetValueChar
3353: (p_source_code => 'LEDGER_CATEGORY_CODE'
3346: ---------------------------------------------------------------------------------------------------------------
3347: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3348:
3349: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3350: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3351:
3352: IF xla_accounting_cache_pkg.GetValueChar
3353: (p_source_code => 'LEDGER_CATEGORY_CODE'
3354: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
3357: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
3358: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
3359: )
3360: THEN
3361: xla_ae_lines_pkg.BflowUpgEntry
3362: (p_business_method_code => l_bflow_method_code
3363: ,p_business_class_code => l_bflow_class_code
3364: ,p_balance_type => l_balance_type_code);
3365: ELSE
3397: , x_value_type_code => l_adr_value_type_code
3398: , p_side => 'NA'
3399: );
3400:
3401: xla_ae_lines_pkg.set_ccid(
3402: p_code_combination_id => l_ccid
3403: , p_value_type_code => l_adr_value_type_code
3404: , p_transaction_coa_id => l_adr_transaction_coa_id
3405: , p_accounting_coa_id => l_adr_accounting_coa_id
3433: xla_accounting_err_pkg.build_message
3434: (p_appli_s_name => 'XLA'
3435: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
3436: ,p_token_1 => 'LINE_NUMBER'
3437: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
3438: ,p_token_2 => 'LINE_TYPE_NAME'
3439: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
3440: l_component_type
3441: ,l_component_code
3469: --
3470: --
3471: ------------------------------------------------------------------------------------------------
3472: -- 4219869 Business Flow
3473: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
3474: -- Prior Entry. Currently, the following code is always generated.
3475: ------------------------------------------------------------------------------------------------
3476: XLA_AE_LINES_PKG.ValidateCurrentLine;
3477:
3472: -- 4219869 Business Flow
3473: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
3474: -- Prior Entry. Currently, the following code is always generated.
3475: ------------------------------------------------------------------------------------------------
3476: XLA_AE_LINES_PKG.ValidateCurrentLine;
3477:
3478: ------------------------------------------------------------------------------------
3479: -- 4219869 Business Flow
3480: -- Populated credit and debit amounts -- Need to generate this within IF
3478: ------------------------------------------------------------------------------------
3479: -- 4219869 Business Flow
3480: -- Populated credit and debit amounts -- Need to generate this within IF
3481: ------------------------------------------------------------------------------------
3482: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
3483:
3484: ----------------------------------------------------------------------------------
3485: -- 4219869 Business Flow
3486: -- Update journal entry status -- Need to generate this within IF
3510: -- To allow MPA report to determine if it should generate report process
3511: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
3512: ------------------------------------------------------------------------------------------
3513:
3514: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
3515: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
3516: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
3517: -- call ADRs
3518: -- Bug 4922099
3511: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
3512: ------------------------------------------------------------------------------------------
3513:
3514: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
3515: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
3516: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
3517: -- call ADRs
3518: -- Bug 4922099
3519: --
3535: , x_value_type_code => l_adr_value_type_code
3536: , p_side => 'NA'
3537: );
3538:
3539: xla_ae_lines_pkg.set_ccid(
3540: p_code_combination_id => l_ccid
3541: , p_value_type_code => l_adr_value_type_code
3542: , p_transaction_coa_id => l_adr_transaction_coa_id
3543: , p_accounting_coa_id => l_adr_accounting_coa_id
3558:
3559: --
3560: -- Update the line information that should be overwritten
3561: --
3562: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
3563: p_header_num => 1);
3564: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
3565:
3566: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
3560: -- Update the line information that should be overwritten
3561: --
3562: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
3563: p_header_num => 1);
3564: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
3565:
3566: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
3567:
3568: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
3562: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
3563: p_header_num => 1);
3564: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
3565:
3566: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
3567:
3568: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
3569: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
3570: END IF;
3565:
3566: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
3567:
3568: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
3569: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
3570: END IF;
3571:
3572: --
3573: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
3572: --
3573: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
3574: --
3575: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
3576: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
3577: ELSE
3578: ---------------------------------------------------------------------------------------------------
3579: -- 4262811a Switch Sign
3580: ---------------------------------------------------------------------------------------------------
3577: ELSE
3578: ---------------------------------------------------------------------------------------------------
3579: -- 4262811a Switch Sign
3580: ---------------------------------------------------------------------------------------------------
3581: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3582: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3583: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3584: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3585: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3578: ---------------------------------------------------------------------------------------------------
3579: -- 4262811a Switch Sign
3580: ---------------------------------------------------------------------------------------------------
3581: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3582: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3583: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3584: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3585: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3586: -- 5132302
3579: -- 4262811a Switch Sign
3580: ---------------------------------------------------------------------------------------------------
3581: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3582: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3583: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3584: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3585: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3586: -- 5132302
3587: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3580: ---------------------------------------------------------------------------------------------------
3581: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3582: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3583: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3584: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3585: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3586: -- 5132302
3587: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3588: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3581: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3582: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3583: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3584: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3585: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3586: -- 5132302
3587: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3588: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3589:
3583: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3584: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3585: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3586: -- 5132302
3587: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3588: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3589:
3590: END IF;
3591:
3584: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3585: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3586: -- 5132302
3587: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3588: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3589:
3590: END IF;
3591:
3592: -- 4955764
3589:
3590: END IF;
3591:
3592: -- 4955764
3593: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3594: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
3595:
3596:
3597: XLA_AE_LINES_PKG.ValidateCurrentLine;
3593: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3594: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
3595:
3596:
3597: XLA_AE_LINES_PKG.ValidateCurrentLine;
3598: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
3599:
3600: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
3601: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
3594: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
3595:
3596:
3597: XLA_AE_LINES_PKG.ValidateCurrentLine;
3598: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
3599:
3600: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
3601: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
3602: ,p_balance_type_code => l_balance_type_code);
3735: --
3736: -- bulk performance
3737: --
3738: l_balance_type_code VARCHAR2(1);
3739: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
3740: l_log_module VARCHAR2(240);
3741:
3742: --
3743: -- Upgrade strategy
3805: ') = 'ENDORSEMENT'
3806: THEN
3807:
3808: --
3809: XLA_AE_LINES_PKG.SetNewLine;
3810:
3811: p_balance_type_code := l_balance_type_code;
3812: -- set the flag so later we will know whether the gain loss line needs to be created
3813:
3817:
3818: --
3819: -- bulk performance
3820: --
3821: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
3822: p_header_num => 0); -- 4262811
3823: --
3824: -- set accounting line options
3825: --
3822: p_header_num => 0); -- 4262811
3823: --
3824: -- set accounting line options
3825: --
3826: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
3827: p_natural_side_code => 'C'
3828: , p_gain_or_loss_flag => 'N'
3829: , p_gl_transfer_mode_code => 'S'
3830: , p_acct_entry_type_code => 'A'
3836: --
3837: --
3838: -- set accounting line type info
3839: --
3840: xla_ae_lines_pkg.SetAcctLineType
3841: (p_component_type => l_component_type
3842: ,p_event_type_code => l_event_type_code
3843: ,p_line_definition_owner_code => l_line_definition_owner_code
3844: ,p_line_definition_code => l_line_definition_code
3850: ,p_event_class_code => l_event_class_code);
3851: --
3852: -- set accounting class
3853: --
3854: xla_ae_lines_pkg.SetAcctClass(
3855: p_accounting_class_code => 'ENDORSEMENT'
3856: , p_ae_header_id => l_ae_header_id
3857: );
3858:
3858:
3859: --
3860: -- set rounding class
3861: --
3862: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
3863: 'RECEIVABLE';
3864:
3865: --
3866: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
3862: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
3863: 'RECEIVABLE';
3864:
3865: --
3866: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
3867: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
3868: --
3869: -- bulk performance
3870: --
3863: 'RECEIVABLE';
3864:
3865: --
3866: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
3867: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
3868: --
3869: -- bulk performance
3870: --
3871: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
3867: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
3868: --
3869: -- bulk performance
3870: --
3871: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
3872:
3873: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
3874: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
3875:
3869: -- bulk performance
3870: --
3871: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
3872:
3873: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
3874: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
3875:
3876: -- 4955764
3877: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3873: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
3874: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
3875:
3876: -- 4955764
3877: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3878: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
3879:
3880: -- 4458381 Public Sector Enh
3881:
3907: l_rec_acct_attrs.array_num_value(10) := p_source_38;
3908: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
3909: l_rec_acct_attrs.array_char_value(11) := p_source_39;
3910:
3911: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
3912: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
3913:
3914: ---------------------------------------------------------------------------------------------------------------
3915: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3908: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
3909: l_rec_acct_attrs.array_char_value(11) := p_source_39;
3910:
3911: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
3912: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
3913:
3914: ---------------------------------------------------------------------------------------------------------------
3915: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3916: ---------------------------------------------------------------------------------------------------------------
3911: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
3912: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
3913:
3914: ---------------------------------------------------------------------------------------------------------------
3915: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3916: ---------------------------------------------------------------------------------------------------------------
3917: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3918:
3919: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3913:
3914: ---------------------------------------------------------------------------------------------------------------
3915: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3916: ---------------------------------------------------------------------------------------------------------------
3917: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3918:
3919: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3920: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3921:
3915: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3916: ---------------------------------------------------------------------------------------------------------------
3917: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3918:
3919: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3920: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3921:
3922: IF xla_accounting_cache_pkg.GetValueChar
3923: (p_source_code => 'LEDGER_CATEGORY_CODE'
3916: ---------------------------------------------------------------------------------------------------------------
3917: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3918:
3919: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3920: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3921:
3922: IF xla_accounting_cache_pkg.GetValueChar
3923: (p_source_code => 'LEDGER_CATEGORY_CODE'
3924: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
3927: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
3928: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
3929: )
3930: THEN
3931: xla_ae_lines_pkg.BflowUpgEntry
3932: (p_business_method_code => l_bflow_method_code
3933: ,p_business_class_code => l_bflow_class_code
3934: ,p_balance_type => l_balance_type_code);
3935: ELSE
3967: , x_value_type_code => l_adr_value_type_code
3968: , p_side => 'NA'
3969: );
3970:
3971: xla_ae_lines_pkg.set_ccid(
3972: p_code_combination_id => l_ccid
3973: , p_value_type_code => l_adr_value_type_code
3974: , p_transaction_coa_id => l_adr_transaction_coa_id
3975: , p_accounting_coa_id => l_adr_accounting_coa_id
4003: xla_accounting_err_pkg.build_message
4004: (p_appli_s_name => 'XLA'
4005: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
4006: ,p_token_1 => 'LINE_NUMBER'
4007: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
4008: ,p_token_2 => 'LINE_TYPE_NAME'
4009: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
4010: l_component_type
4011: ,l_component_code
4039: --
4040: --
4041: ------------------------------------------------------------------------------------------------
4042: -- 4219869 Business Flow
4043: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
4044: -- Prior Entry. Currently, the following code is always generated.
4045: ------------------------------------------------------------------------------------------------
4046: XLA_AE_LINES_PKG.ValidateCurrentLine;
4047:
4042: -- 4219869 Business Flow
4043: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
4044: -- Prior Entry. Currently, the following code is always generated.
4045: ------------------------------------------------------------------------------------------------
4046: XLA_AE_LINES_PKG.ValidateCurrentLine;
4047:
4048: ------------------------------------------------------------------------------------
4049: -- 4219869 Business Flow
4050: -- Populated credit and debit amounts -- Need to generate this within IF
4048: ------------------------------------------------------------------------------------
4049: -- 4219869 Business Flow
4050: -- Populated credit and debit amounts -- Need to generate this within IF
4051: ------------------------------------------------------------------------------------
4052: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
4053:
4054: ----------------------------------------------------------------------------------
4055: -- 4219869 Business Flow
4056: -- Update journal entry status -- Need to generate this within IF
4080: -- To allow MPA report to determine if it should generate report process
4081: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
4082: ------------------------------------------------------------------------------------------
4083:
4084: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
4085: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
4086: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
4087: -- call ADRs
4088: -- Bug 4922099
4081: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
4082: ------------------------------------------------------------------------------------------
4083:
4084: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
4085: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
4086: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
4087: -- call ADRs
4088: -- Bug 4922099
4089: --
4105: , x_value_type_code => l_adr_value_type_code
4106: , p_side => 'NA'
4107: );
4108:
4109: xla_ae_lines_pkg.set_ccid(
4110: p_code_combination_id => l_ccid
4111: , p_value_type_code => l_adr_value_type_code
4112: , p_transaction_coa_id => l_adr_transaction_coa_id
4113: , p_accounting_coa_id => l_adr_accounting_coa_id
4128:
4129: --
4130: -- Update the line information that should be overwritten
4131: --
4132: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
4133: p_header_num => 1);
4134: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
4135:
4136: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4130: -- Update the line information that should be overwritten
4131: --
4132: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
4133: p_header_num => 1);
4134: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
4135:
4136: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4137:
4138: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
4132: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
4133: p_header_num => 1);
4134: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
4135:
4136: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4137:
4138: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
4139: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
4140: END IF;
4135:
4136: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4137:
4138: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
4139: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
4140: END IF;
4141:
4142: --
4143: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
4142: --
4143: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
4144: --
4145: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
4146: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
4147: ELSE
4148: ---------------------------------------------------------------------------------------------------
4149: -- 4262811a Switch Sign
4150: ---------------------------------------------------------------------------------------------------
4147: ELSE
4148: ---------------------------------------------------------------------------------------------------
4149: -- 4262811a Switch Sign
4150: ---------------------------------------------------------------------------------------------------
4151: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4152: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4153: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4154: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4155: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4148: ---------------------------------------------------------------------------------------------------
4149: -- 4262811a Switch Sign
4150: ---------------------------------------------------------------------------------------------------
4151: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4152: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4153: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4154: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4155: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4156: -- 5132302
4149: -- 4262811a Switch Sign
4150: ---------------------------------------------------------------------------------------------------
4151: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4152: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4153: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4154: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4155: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4156: -- 5132302
4157: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4150: ---------------------------------------------------------------------------------------------------
4151: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4152: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4153: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4154: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4155: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4156: -- 5132302
4157: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4158: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4151: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4152: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4153: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4154: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4155: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4156: -- 5132302
4157: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4158: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4159:
4153: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4154: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4155: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4156: -- 5132302
4157: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4158: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4159:
4160: END IF;
4161:
4154: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4155: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4156: -- 5132302
4157: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4158: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4159:
4160: END IF;
4161:
4162: -- 4955764
4159:
4160: END IF;
4161:
4162: -- 4955764
4163: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4164: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
4165:
4166:
4167: XLA_AE_LINES_PKG.ValidateCurrentLine;
4163: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4164: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
4165:
4166:
4167: XLA_AE_LINES_PKG.ValidateCurrentLine;
4168: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
4169:
4170: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
4171: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
4164: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
4165:
4166:
4167: XLA_AE_LINES_PKG.ValidateCurrentLine;
4168: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
4169:
4170: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
4171: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
4172: ,p_balance_type_code => l_balance_type_code);
4303: --
4304: -- bulk performance
4305: --
4306: l_balance_type_code VARCHAR2(1);
4307: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
4308: l_log_module VARCHAR2(240);
4309:
4310: --
4311: -- Upgrade strategy
4373: ') = 'FINCHRG_NON_REC_TAX'
4374: THEN
4375:
4376: --
4377: XLA_AE_LINES_PKG.SetNewLine;
4378:
4379: p_balance_type_code := l_balance_type_code;
4380: -- set the flag so later we will know whether the gain loss line needs to be created
4381:
4385:
4386: --
4387: -- bulk performance
4388: --
4389: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
4390: p_header_num => 0); -- 4262811
4391: --
4392: -- set accounting line options
4393: --
4390: p_header_num => 0); -- 4262811
4391: --
4392: -- set accounting line options
4393: --
4394: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
4395: p_natural_side_code => 'C'
4396: , p_gain_or_loss_flag => 'N'
4397: , p_gl_transfer_mode_code => 'S'
4398: , p_acct_entry_type_code => 'A'
4404: --
4405: --
4406: -- set accounting line type info
4407: --
4408: xla_ae_lines_pkg.SetAcctLineType
4409: (p_component_type => l_component_type
4410: ,p_event_type_code => l_event_type_code
4411: ,p_line_definition_owner_code => l_line_definition_owner_code
4412: ,p_line_definition_code => l_line_definition_code
4418: ,p_event_class_code => l_event_class_code);
4419: --
4420: -- set accounting class
4421: --
4422: xla_ae_lines_pkg.SetAcctClass(
4423: p_accounting_class_code => 'CHARGES'
4424: , p_ae_header_id => l_ae_header_id
4425: );
4426:
4426:
4427: --
4428: -- set rounding class
4429: --
4430: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
4431: 'RECEIVABLE';
4432:
4433: --
4434: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
4430: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
4431: 'RECEIVABLE';
4432:
4433: --
4434: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
4435: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
4436: --
4437: -- bulk performance
4438: --
4431: 'RECEIVABLE';
4432:
4433: --
4434: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
4435: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
4436: --
4437: -- bulk performance
4438: --
4439: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
4435: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
4436: --
4437: -- bulk performance
4438: --
4439: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
4440:
4441: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
4442: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
4443:
4437: -- bulk performance
4438: --
4439: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
4440:
4441: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
4442: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
4443:
4444: -- 4955764
4445: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4441: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
4442: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
4443:
4444: -- 4955764
4445: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4446: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
4447:
4448: -- 4458381 Public Sector Enh
4449:
4475: l_rec_acct_attrs.array_num_value(10) := p_source_38;
4476: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
4477: l_rec_acct_attrs.array_char_value(11) := p_source_39;
4478:
4479: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
4480: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
4481:
4482: ---------------------------------------------------------------------------------------------------------------
4483: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4476: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
4477: l_rec_acct_attrs.array_char_value(11) := p_source_39;
4478:
4479: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
4480: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
4481:
4482: ---------------------------------------------------------------------------------------------------------------
4483: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4484: ---------------------------------------------------------------------------------------------------------------
4479: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
4480: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
4481:
4482: ---------------------------------------------------------------------------------------------------------------
4483: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4484: ---------------------------------------------------------------------------------------------------------------
4485: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4486:
4487: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4481:
4482: ---------------------------------------------------------------------------------------------------------------
4483: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4484: ---------------------------------------------------------------------------------------------------------------
4485: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4486:
4487: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4488: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4489:
4483: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4484: ---------------------------------------------------------------------------------------------------------------
4485: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4486:
4487: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4488: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4489:
4490: IF xla_accounting_cache_pkg.GetValueChar
4491: (p_source_code => 'LEDGER_CATEGORY_CODE'
4484: ---------------------------------------------------------------------------------------------------------------
4485: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4486:
4487: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4488: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4489:
4490: IF xla_accounting_cache_pkg.GetValueChar
4491: (p_source_code => 'LEDGER_CATEGORY_CODE'
4492: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
4495: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
4496: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
4497: )
4498: THEN
4499: xla_ae_lines_pkg.BflowUpgEntry
4500: (p_business_method_code => l_bflow_method_code
4501: ,p_business_class_code => l_bflow_class_code
4502: ,p_balance_type => l_balance_type_code);
4503: ELSE
4535: , x_value_type_code => l_adr_value_type_code
4536: , p_side => 'NA'
4537: );
4538:
4539: xla_ae_lines_pkg.set_ccid(
4540: p_code_combination_id => l_ccid
4541: , p_value_type_code => l_adr_value_type_code
4542: , p_transaction_coa_id => l_adr_transaction_coa_id
4543: , p_accounting_coa_id => l_adr_accounting_coa_id
4571: xla_accounting_err_pkg.build_message
4572: (p_appli_s_name => 'XLA'
4573: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
4574: ,p_token_1 => 'LINE_NUMBER'
4575: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
4576: ,p_token_2 => 'LINE_TYPE_NAME'
4577: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
4578: l_component_type
4579: ,l_component_code
4607: --
4608: --
4609: ------------------------------------------------------------------------------------------------
4610: -- 4219869 Business Flow
4611: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
4612: -- Prior Entry. Currently, the following code is always generated.
4613: ------------------------------------------------------------------------------------------------
4614: XLA_AE_LINES_PKG.ValidateCurrentLine;
4615:
4610: -- 4219869 Business Flow
4611: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
4612: -- Prior Entry. Currently, the following code is always generated.
4613: ------------------------------------------------------------------------------------------------
4614: XLA_AE_LINES_PKG.ValidateCurrentLine;
4615:
4616: ------------------------------------------------------------------------------------
4617: -- 4219869 Business Flow
4618: -- Populated credit and debit amounts -- Need to generate this within IF
4616: ------------------------------------------------------------------------------------
4617: -- 4219869 Business Flow
4618: -- Populated credit and debit amounts -- Need to generate this within IF
4619: ------------------------------------------------------------------------------------
4620: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
4621:
4622: ----------------------------------------------------------------------------------
4623: -- 4219869 Business Flow
4624: -- Update journal entry status -- Need to generate this within IF
4648: -- To allow MPA report to determine if it should generate report process
4649: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
4650: ------------------------------------------------------------------------------------------
4651:
4652: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
4653: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
4654: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
4655: -- call ADRs
4656: -- Bug 4922099
4649: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
4650: ------------------------------------------------------------------------------------------
4651:
4652: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
4653: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
4654: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
4655: -- call ADRs
4656: -- Bug 4922099
4657: --
4673: , x_value_type_code => l_adr_value_type_code
4674: , p_side => 'NA'
4675: );
4676:
4677: xla_ae_lines_pkg.set_ccid(
4678: p_code_combination_id => l_ccid
4679: , p_value_type_code => l_adr_value_type_code
4680: , p_transaction_coa_id => l_adr_transaction_coa_id
4681: , p_accounting_coa_id => l_adr_accounting_coa_id
4696:
4697: --
4698: -- Update the line information that should be overwritten
4699: --
4700: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
4701: p_header_num => 1);
4702: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
4703:
4704: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4698: -- Update the line information that should be overwritten
4699: --
4700: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
4701: p_header_num => 1);
4702: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
4703:
4704: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4705:
4706: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
4700: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
4701: p_header_num => 1);
4702: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
4703:
4704: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4705:
4706: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
4707: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
4708: END IF;
4703:
4704: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4705:
4706: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
4707: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
4708: END IF;
4709:
4710: --
4711: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
4710: --
4711: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
4712: --
4713: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
4714: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
4715: ELSE
4716: ---------------------------------------------------------------------------------------------------
4717: -- 4262811a Switch Sign
4718: ---------------------------------------------------------------------------------------------------
4715: ELSE
4716: ---------------------------------------------------------------------------------------------------
4717: -- 4262811a Switch Sign
4718: ---------------------------------------------------------------------------------------------------
4719: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4720: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4721: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4722: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4723: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4716: ---------------------------------------------------------------------------------------------------
4717: -- 4262811a Switch Sign
4718: ---------------------------------------------------------------------------------------------------
4719: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4720: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4721: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4722: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4723: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4724: -- 5132302
4717: -- 4262811a Switch Sign
4718: ---------------------------------------------------------------------------------------------------
4719: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4720: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4721: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4722: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4723: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4724: -- 5132302
4725: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4718: ---------------------------------------------------------------------------------------------------
4719: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4720: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4721: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4722: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4723: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4724: -- 5132302
4725: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4726: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4719: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4720: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4721: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4722: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4723: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4724: -- 5132302
4725: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4726: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4727:
4721: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4722: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4723: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4724: -- 5132302
4725: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4726: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4727:
4728: END IF;
4729:
4722: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4723: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4724: -- 5132302
4725: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4726: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4727:
4728: END IF;
4729:
4730: -- 4955764
4727:
4728: END IF;
4729:
4730: -- 4955764
4731: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4732: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
4733:
4734:
4735: XLA_AE_LINES_PKG.ValidateCurrentLine;
4731: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4732: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
4733:
4734:
4735: XLA_AE_LINES_PKG.ValidateCurrentLine;
4736: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
4737:
4738: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
4739: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
4732: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
4733:
4734:
4735: XLA_AE_LINES_PKG.ValidateCurrentLine;
4736: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
4737:
4738: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
4739: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
4740: ,p_balance_type_code => l_balance_type_code);
4871: --
4872: -- bulk performance
4873: --
4874: l_balance_type_code VARCHAR2(1);
4875: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
4876: l_log_module VARCHAR2(240);
4877:
4878: --
4879: -- Upgrade strategy
4939: ') = 'REC'
4940: THEN
4941:
4942: --
4943: XLA_AE_LINES_PKG.SetNewLine;
4944:
4945: p_balance_type_code := l_balance_type_code;
4946: -- set the flag so later we will know whether the gain loss line needs to be created
4947:
4951:
4952: --
4953: -- bulk performance
4954: --
4955: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
4956: p_header_num => 0); -- 4262811
4957: --
4958: -- set accounting line options
4959: --
4956: p_header_num => 0); -- 4262811
4957: --
4958: -- set accounting line options
4959: --
4960: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
4961: p_natural_side_code => 'C'
4962: , p_gain_or_loss_flag => 'N'
4963: , p_gl_transfer_mode_code => 'S'
4964: , p_acct_entry_type_code => 'A'
4970: --
4971: --
4972: -- set accounting line type info
4973: --
4974: xla_ae_lines_pkg.SetAcctLineType
4975: (p_component_type => l_component_type
4976: ,p_event_type_code => l_event_type_code
4977: ,p_line_definition_owner_code => l_line_definition_owner_code
4978: ,p_line_definition_code => l_line_definition_code
4984: ,p_event_class_code => l_event_class_code);
4985: --
4986: -- set accounting class
4987: --
4988: xla_ae_lines_pkg.SetAcctClass(
4989: p_accounting_class_code => 'RECEIVABLE'
4990: , p_ae_header_id => l_ae_header_id
4991: );
4992:
4992:
4993: --
4994: -- set rounding class
4995: --
4996: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
4997: 'RECEIVABLE';
4998:
4999: --
5000: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
4996: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
4997: 'RECEIVABLE';
4998:
4999: --
5000: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5001: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5002: --
5003: -- bulk performance
5004: --
4997: 'RECEIVABLE';
4998:
4999: --
5000: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5001: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5002: --
5003: -- bulk performance
5004: --
5005: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5001: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5002: --
5003: -- bulk performance
5004: --
5005: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5006:
5007: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5008: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5009:
5003: -- bulk performance
5004: --
5005: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5006:
5007: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5008: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5009:
5010: -- 4955764
5011: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5007: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5008: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5009:
5010: -- 4955764
5011: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5012: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
5013:
5014: -- 4458381 Public Sector Enh
5015:
5041: l_rec_acct_attrs.array_num_value(10) := p_source_38;
5042: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
5043: l_rec_acct_attrs.array_char_value(11) := p_source_39;
5044:
5045: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5046: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5047:
5048: ---------------------------------------------------------------------------------------------------------------
5049: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5042: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
5043: l_rec_acct_attrs.array_char_value(11) := p_source_39;
5044:
5045: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5046: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5047:
5048: ---------------------------------------------------------------------------------------------------------------
5049: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5050: ---------------------------------------------------------------------------------------------------------------
5045: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5046: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5047:
5048: ---------------------------------------------------------------------------------------------------------------
5049: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5050: ---------------------------------------------------------------------------------------------------------------
5051: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5052:
5053: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5047:
5048: ---------------------------------------------------------------------------------------------------------------
5049: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5050: ---------------------------------------------------------------------------------------------------------------
5051: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5052:
5053: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5054: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5055:
5049: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5050: ---------------------------------------------------------------------------------------------------------------
5051: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5052:
5053: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5054: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5055:
5056: IF xla_accounting_cache_pkg.GetValueChar
5057: (p_source_code => 'LEDGER_CATEGORY_CODE'
5050: ---------------------------------------------------------------------------------------------------------------
5051: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5052:
5053: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5054: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5055:
5056: IF xla_accounting_cache_pkg.GetValueChar
5057: (p_source_code => 'LEDGER_CATEGORY_CODE'
5058: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
5061: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
5062: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
5063: )
5064: THEN
5065: xla_ae_lines_pkg.BflowUpgEntry
5066: (p_business_method_code => l_bflow_method_code
5067: ,p_business_class_code => l_bflow_class_code
5068: ,p_balance_type => l_balance_type_code);
5069: ELSE
5101: , x_value_type_code => l_adr_value_type_code
5102: , p_side => 'NA'
5103: );
5104:
5105: xla_ae_lines_pkg.set_ccid(
5106: p_code_combination_id => l_ccid
5107: , p_value_type_code => l_adr_value_type_code
5108: , p_transaction_coa_id => l_adr_transaction_coa_id
5109: , p_accounting_coa_id => l_adr_accounting_coa_id
5137: xla_accounting_err_pkg.build_message
5138: (p_appli_s_name => 'XLA'
5139: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
5140: ,p_token_1 => 'LINE_NUMBER'
5141: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
5142: ,p_token_2 => 'LINE_TYPE_NAME'
5143: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
5144: l_component_type
5145: ,l_component_code
5173: --
5174: --
5175: ------------------------------------------------------------------------------------------------
5176: -- 4219869 Business Flow
5177: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
5178: -- Prior Entry. Currently, the following code is always generated.
5179: ------------------------------------------------------------------------------------------------
5180: XLA_AE_LINES_PKG.ValidateCurrentLine;
5181:
5176: -- 4219869 Business Flow
5177: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
5178: -- Prior Entry. Currently, the following code is always generated.
5179: ------------------------------------------------------------------------------------------------
5180: XLA_AE_LINES_PKG.ValidateCurrentLine;
5181:
5182: ------------------------------------------------------------------------------------
5183: -- 4219869 Business Flow
5184: -- Populated credit and debit amounts -- Need to generate this within IF
5182: ------------------------------------------------------------------------------------
5183: -- 4219869 Business Flow
5184: -- Populated credit and debit amounts -- Need to generate this within IF
5185: ------------------------------------------------------------------------------------
5186: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5187:
5188: ----------------------------------------------------------------------------------
5189: -- 4219869 Business Flow
5190: -- Update journal entry status -- Need to generate this within IF
5214: -- To allow MPA report to determine if it should generate report process
5215: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
5216: ------------------------------------------------------------------------------------------
5217:
5218: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
5219: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
5220: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
5221: -- call ADRs
5222: -- Bug 4922099
5215: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
5216: ------------------------------------------------------------------------------------------
5217:
5218: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
5219: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
5220: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
5221: -- call ADRs
5222: -- Bug 4922099
5223: --
5239: , x_value_type_code => l_adr_value_type_code
5240: , p_side => 'NA'
5241: );
5242:
5243: xla_ae_lines_pkg.set_ccid(
5244: p_code_combination_id => l_ccid
5245: , p_value_type_code => l_adr_value_type_code
5246: , p_transaction_coa_id => l_adr_transaction_coa_id
5247: , p_accounting_coa_id => l_adr_accounting_coa_id
5262:
5263: --
5264: -- Update the line information that should be overwritten
5265: --
5266: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5267: p_header_num => 1);
5268: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5269:
5270: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5264: -- Update the line information that should be overwritten
5265: --
5266: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5267: p_header_num => 1);
5268: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5269:
5270: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5271:
5272: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5266: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5267: p_header_num => 1);
5268: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5269:
5270: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5271:
5272: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5273: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
5274: END IF;
5269:
5270: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5271:
5272: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5273: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
5274: END IF;
5275:
5276: --
5277: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
5276: --
5277: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
5278: --
5279: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
5280: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
5281: ELSE
5282: ---------------------------------------------------------------------------------------------------
5283: -- 4262811a Switch Sign
5284: ---------------------------------------------------------------------------------------------------
5281: ELSE
5282: ---------------------------------------------------------------------------------------------------
5283: -- 4262811a Switch Sign
5284: ---------------------------------------------------------------------------------------------------
5285: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5286: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5287: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5288: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5289: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5282: ---------------------------------------------------------------------------------------------------
5283: -- 4262811a Switch Sign
5284: ---------------------------------------------------------------------------------------------------
5285: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5286: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5287: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5288: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5289: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5290: -- 5132302
5283: -- 4262811a Switch Sign
5284: ---------------------------------------------------------------------------------------------------
5285: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5286: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5287: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5288: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5289: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5290: -- 5132302
5291: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5284: ---------------------------------------------------------------------------------------------------
5285: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5286: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5287: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5288: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5289: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5290: -- 5132302
5291: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5292: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5285: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5286: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5287: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5288: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5289: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5290: -- 5132302
5291: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5292: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5293:
5287: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5288: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5289: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5290: -- 5132302
5291: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5292: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5293:
5294: END IF;
5295:
5288: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5289: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5290: -- 5132302
5291: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5292: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5293:
5294: END IF;
5295:
5296: -- 4955764
5293:
5294: END IF;
5295:
5296: -- 4955764
5297: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5298: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5299:
5300:
5301: XLA_AE_LINES_PKG.ValidateCurrentLine;
5297: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5298: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5299:
5300:
5301: XLA_AE_LINES_PKG.ValidateCurrentLine;
5302: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5303:
5304: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
5305: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
5298: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5299:
5300:
5301: XLA_AE_LINES_PKG.ValidateCurrentLine;
5302: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5303:
5304: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
5305: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
5306: ,p_balance_type_code => l_balance_type_code);
5437: --
5438: -- bulk performance
5439: --
5440: l_balance_type_code VARCHAR2(1);
5441: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
5442: l_log_module VARCHAR2(240);
5443:
5444: --
5445: -- Upgrade strategy
5505: ') = 'DEFERRED_TAX'
5506: THEN
5507:
5508: --
5509: XLA_AE_LINES_PKG.SetNewLine;
5510:
5511: p_balance_type_code := l_balance_type_code;
5512: -- set the flag so later we will know whether the gain loss line needs to be created
5513:
5517:
5518: --
5519: -- bulk performance
5520: --
5521: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
5522: p_header_num => 0); -- 4262811
5523: --
5524: -- set accounting line options
5525: --
5522: p_header_num => 0); -- 4262811
5523: --
5524: -- set accounting line options
5525: --
5526: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
5527: p_natural_side_code => 'C'
5528: , p_gain_or_loss_flag => 'N'
5529: , p_gl_transfer_mode_code => 'S'
5530: , p_acct_entry_type_code => 'A'
5536: --
5537: --
5538: -- set accounting line type info
5539: --
5540: xla_ae_lines_pkg.SetAcctLineType
5541: (p_component_type => l_component_type
5542: ,p_event_type_code => l_event_type_code
5543: ,p_line_definition_owner_code => l_line_definition_owner_code
5544: ,p_line_definition_code => l_line_definition_code
5550: ,p_event_class_code => l_event_class_code);
5551: --
5552: -- set accounting class
5553: --
5554: xla_ae_lines_pkg.SetAcctClass(
5555: p_accounting_class_code => 'DEFERRED_TAX'
5556: , p_ae_header_id => l_ae_header_id
5557: );
5558:
5558:
5559: --
5560: -- set rounding class
5561: --
5562: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
5563: 'RECEIVABLE';
5564:
5565: --
5566: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5562: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
5563: 'RECEIVABLE';
5564:
5565: --
5566: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5567: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5568: --
5569: -- bulk performance
5570: --
5563: 'RECEIVABLE';
5564:
5565: --
5566: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5567: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5568: --
5569: -- bulk performance
5570: --
5571: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5567: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5568: --
5569: -- bulk performance
5570: --
5571: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5572:
5573: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5574: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5575:
5569: -- bulk performance
5570: --
5571: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5572:
5573: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5574: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5575:
5576: -- 4955764
5577: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5573: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5574: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5575:
5576: -- 4955764
5577: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5578: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
5579:
5580: -- 4458381 Public Sector Enh
5581:
5607: l_rec_acct_attrs.array_num_value(10) := p_source_38;
5608: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
5609: l_rec_acct_attrs.array_char_value(11) := p_source_39;
5610:
5611: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5612: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5613:
5614: ---------------------------------------------------------------------------------------------------------------
5615: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5608: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
5609: l_rec_acct_attrs.array_char_value(11) := p_source_39;
5610:
5611: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5612: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5613:
5614: ---------------------------------------------------------------------------------------------------------------
5615: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5616: ---------------------------------------------------------------------------------------------------------------
5611: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5612: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5613:
5614: ---------------------------------------------------------------------------------------------------------------
5615: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5616: ---------------------------------------------------------------------------------------------------------------
5617: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5618:
5619: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5613:
5614: ---------------------------------------------------------------------------------------------------------------
5615: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5616: ---------------------------------------------------------------------------------------------------------------
5617: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5618:
5619: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5620: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5621:
5615: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5616: ---------------------------------------------------------------------------------------------------------------
5617: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5618:
5619: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5620: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5621:
5622: IF xla_accounting_cache_pkg.GetValueChar
5623: (p_source_code => 'LEDGER_CATEGORY_CODE'
5616: ---------------------------------------------------------------------------------------------------------------
5617: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5618:
5619: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5620: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5621:
5622: IF xla_accounting_cache_pkg.GetValueChar
5623: (p_source_code => 'LEDGER_CATEGORY_CODE'
5624: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
5627: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
5628: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
5629: )
5630: THEN
5631: xla_ae_lines_pkg.BflowUpgEntry
5632: (p_business_method_code => l_bflow_method_code
5633: ,p_business_class_code => l_bflow_class_code
5634: ,p_balance_type => l_balance_type_code);
5635: ELSE
5667: , x_value_type_code => l_adr_value_type_code
5668: , p_side => 'NA'
5669: );
5670:
5671: xla_ae_lines_pkg.set_ccid(
5672: p_code_combination_id => l_ccid
5673: , p_value_type_code => l_adr_value_type_code
5674: , p_transaction_coa_id => l_adr_transaction_coa_id
5675: , p_accounting_coa_id => l_adr_accounting_coa_id
5703: xla_accounting_err_pkg.build_message
5704: (p_appli_s_name => 'XLA'
5705: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
5706: ,p_token_1 => 'LINE_NUMBER'
5707: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
5708: ,p_token_2 => 'LINE_TYPE_NAME'
5709: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
5710: l_component_type
5711: ,l_component_code
5739: --
5740: --
5741: ------------------------------------------------------------------------------------------------
5742: -- 4219869 Business Flow
5743: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
5744: -- Prior Entry. Currently, the following code is always generated.
5745: ------------------------------------------------------------------------------------------------
5746: XLA_AE_LINES_PKG.ValidateCurrentLine;
5747:
5742: -- 4219869 Business Flow
5743: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
5744: -- Prior Entry. Currently, the following code is always generated.
5745: ------------------------------------------------------------------------------------------------
5746: XLA_AE_LINES_PKG.ValidateCurrentLine;
5747:
5748: ------------------------------------------------------------------------------------
5749: -- 4219869 Business Flow
5750: -- Populated credit and debit amounts -- Need to generate this within IF
5748: ------------------------------------------------------------------------------------
5749: -- 4219869 Business Flow
5750: -- Populated credit and debit amounts -- Need to generate this within IF
5751: ------------------------------------------------------------------------------------
5752: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5753:
5754: ----------------------------------------------------------------------------------
5755: -- 4219869 Business Flow
5756: -- Update journal entry status -- Need to generate this within IF
5780: -- To allow MPA report to determine if it should generate report process
5781: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
5782: ------------------------------------------------------------------------------------------
5783:
5784: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
5785: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
5786: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
5787: -- call ADRs
5788: -- Bug 4922099
5781: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
5782: ------------------------------------------------------------------------------------------
5783:
5784: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
5785: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
5786: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
5787: -- call ADRs
5788: -- Bug 4922099
5789: --
5805: , x_value_type_code => l_adr_value_type_code
5806: , p_side => 'NA'
5807: );
5808:
5809: xla_ae_lines_pkg.set_ccid(
5810: p_code_combination_id => l_ccid
5811: , p_value_type_code => l_adr_value_type_code
5812: , p_transaction_coa_id => l_adr_transaction_coa_id
5813: , p_accounting_coa_id => l_adr_accounting_coa_id
5828:
5829: --
5830: -- Update the line information that should be overwritten
5831: --
5832: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5833: p_header_num => 1);
5834: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5835:
5836: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5830: -- Update the line information that should be overwritten
5831: --
5832: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5833: p_header_num => 1);
5834: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5835:
5836: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5837:
5838: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5832: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5833: p_header_num => 1);
5834: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5835:
5836: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5837:
5838: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5839: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
5840: END IF;
5835:
5836: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5837:
5838: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5839: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
5840: END IF;
5841:
5842: --
5843: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
5842: --
5843: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
5844: --
5845: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
5846: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
5847: ELSE
5848: ---------------------------------------------------------------------------------------------------
5849: -- 4262811a Switch Sign
5850: ---------------------------------------------------------------------------------------------------
5847: ELSE
5848: ---------------------------------------------------------------------------------------------------
5849: -- 4262811a Switch Sign
5850: ---------------------------------------------------------------------------------------------------
5851: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5852: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5853: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5854: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5855: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5848: ---------------------------------------------------------------------------------------------------
5849: -- 4262811a Switch Sign
5850: ---------------------------------------------------------------------------------------------------
5851: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5852: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5853: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5854: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5855: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5856: -- 5132302
5849: -- 4262811a Switch Sign
5850: ---------------------------------------------------------------------------------------------------
5851: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5852: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5853: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5854: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5855: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5856: -- 5132302
5857: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5850: ---------------------------------------------------------------------------------------------------
5851: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5852: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5853: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5854: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5855: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5856: -- 5132302
5857: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5858: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5851: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5852: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5853: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5854: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5855: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5856: -- 5132302
5857: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5858: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5859:
5853: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5854: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5855: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5856: -- 5132302
5857: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5858: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5859:
5860: END IF;
5861:
5854: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5855: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5856: -- 5132302
5857: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5858: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5859:
5860: END IF;
5861:
5862: -- 4955764
5859:
5860: END IF;
5861:
5862: -- 4955764
5863: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5864: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5865:
5866:
5867: XLA_AE_LINES_PKG.ValidateCurrentLine;
5863: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5864: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5865:
5866:
5867: XLA_AE_LINES_PKG.ValidateCurrentLine;
5868: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5869:
5870: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
5871: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
5864: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5865:
5866:
5867: XLA_AE_LINES_PKG.ValidateCurrentLine;
5868: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5869:
5870: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
5871: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
5872: ,p_balance_type_code => l_balance_type_code);
6003: --
6004: -- bulk performance
6005: --
6006: l_balance_type_code VARCHAR2(1);
6007: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
6008: l_log_module VARCHAR2(240);
6009:
6010: --
6011: -- Upgrade strategy
6071: ') = 'FINCHRG_NON_REC_TAX'
6072: THEN
6073:
6074: --
6075: XLA_AE_LINES_PKG.SetNewLine;
6076:
6077: p_balance_type_code := l_balance_type_code;
6078: -- set the flag so later we will know whether the gain loss line needs to be created
6079:
6083:
6084: --
6085: -- bulk performance
6086: --
6087: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
6088: p_header_num => 0); -- 4262811
6089: --
6090: -- set accounting line options
6091: --
6088: p_header_num => 0); -- 4262811
6089: --
6090: -- set accounting line options
6091: --
6092: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
6093: p_natural_side_code => 'C'
6094: , p_gain_or_loss_flag => 'N'
6095: , p_gl_transfer_mode_code => 'S'
6096: , p_acct_entry_type_code => 'A'
6102: --
6103: --
6104: -- set accounting line type info
6105: --
6106: xla_ae_lines_pkg.SetAcctLineType
6107: (p_component_type => l_component_type
6108: ,p_event_type_code => l_event_type_code
6109: ,p_line_definition_owner_code => l_line_definition_owner_code
6110: ,p_line_definition_code => l_line_definition_code
6116: ,p_event_class_code => l_event_class_code);
6117: --
6118: -- set accounting class
6119: --
6120: xla_ae_lines_pkg.SetAcctClass(
6121: p_accounting_class_code => 'FINCHRG_NON_REC_TAX'
6122: , p_ae_header_id => l_ae_header_id
6123: );
6124:
6124:
6125: --
6126: -- set rounding class
6127: --
6128: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
6129: 'RECEIVABLE';
6130:
6131: --
6132: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
6128: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
6129: 'RECEIVABLE';
6130:
6131: --
6132: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
6133: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
6134: --
6135: -- bulk performance
6136: --
6129: 'RECEIVABLE';
6130:
6131: --
6132: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
6133: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
6134: --
6135: -- bulk performance
6136: --
6137: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
6133: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
6134: --
6135: -- bulk performance
6136: --
6137: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
6138:
6139: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
6140: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
6141:
6135: -- bulk performance
6136: --
6137: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
6138:
6139: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
6140: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
6141:
6142: -- 4955764
6143: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6139: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
6140: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
6141:
6142: -- 4955764
6143: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6144: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
6145:
6146: -- 4458381 Public Sector Enh
6147:
6173: l_rec_acct_attrs.array_num_value(10) := p_source_38;
6174: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
6175: l_rec_acct_attrs.array_char_value(11) := p_source_39;
6176:
6177: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
6178: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
6179:
6180: ---------------------------------------------------------------------------------------------------------------
6181: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6174: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
6175: l_rec_acct_attrs.array_char_value(11) := p_source_39;
6176:
6177: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
6178: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
6179:
6180: ---------------------------------------------------------------------------------------------------------------
6181: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6182: ---------------------------------------------------------------------------------------------------------------
6177: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
6178: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
6179:
6180: ---------------------------------------------------------------------------------------------------------------
6181: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6182: ---------------------------------------------------------------------------------------------------------------
6183: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6184:
6185: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6179:
6180: ---------------------------------------------------------------------------------------------------------------
6181: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6182: ---------------------------------------------------------------------------------------------------------------
6183: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6184:
6185: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6186: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6187:
6181: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6182: ---------------------------------------------------------------------------------------------------------------
6183: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6184:
6185: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6186: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6187:
6188: IF xla_accounting_cache_pkg.GetValueChar
6189: (p_source_code => 'LEDGER_CATEGORY_CODE'
6182: ---------------------------------------------------------------------------------------------------------------
6183: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6184:
6185: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6186: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6187:
6188: IF xla_accounting_cache_pkg.GetValueChar
6189: (p_source_code => 'LEDGER_CATEGORY_CODE'
6190: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
6193: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
6194: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
6195: )
6196: THEN
6197: xla_ae_lines_pkg.BflowUpgEntry
6198: (p_business_method_code => l_bflow_method_code
6199: ,p_business_class_code => l_bflow_class_code
6200: ,p_balance_type => l_balance_type_code);
6201: ELSE
6233: , x_value_type_code => l_adr_value_type_code
6234: , p_side => 'NA'
6235: );
6236:
6237: xla_ae_lines_pkg.set_ccid(
6238: p_code_combination_id => l_ccid
6239: , p_value_type_code => l_adr_value_type_code
6240: , p_transaction_coa_id => l_adr_transaction_coa_id
6241: , p_accounting_coa_id => l_adr_accounting_coa_id
6269: xla_accounting_err_pkg.build_message
6270: (p_appli_s_name => 'XLA'
6271: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
6272: ,p_token_1 => 'LINE_NUMBER'
6273: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
6274: ,p_token_2 => 'LINE_TYPE_NAME'
6275: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
6276: l_component_type
6277: ,l_component_code
6305: --
6306: --
6307: ------------------------------------------------------------------------------------------------
6308: -- 4219869 Business Flow
6309: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
6310: -- Prior Entry. Currently, the following code is always generated.
6311: ------------------------------------------------------------------------------------------------
6312: XLA_AE_LINES_PKG.ValidateCurrentLine;
6313:
6308: -- 4219869 Business Flow
6309: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
6310: -- Prior Entry. Currently, the following code is always generated.
6311: ------------------------------------------------------------------------------------------------
6312: XLA_AE_LINES_PKG.ValidateCurrentLine;
6313:
6314: ------------------------------------------------------------------------------------
6315: -- 4219869 Business Flow
6316: -- Populated credit and debit amounts -- Need to generate this within IF
6314: ------------------------------------------------------------------------------------
6315: -- 4219869 Business Flow
6316: -- Populated credit and debit amounts -- Need to generate this within IF
6317: ------------------------------------------------------------------------------------
6318: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
6319:
6320: ----------------------------------------------------------------------------------
6321: -- 4219869 Business Flow
6322: -- Update journal entry status -- Need to generate this within IF
6346: -- To allow MPA report to determine if it should generate report process
6347: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
6348: ------------------------------------------------------------------------------------------
6349:
6350: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
6351: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
6352: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
6353: -- call ADRs
6354: -- Bug 4922099
6347: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
6348: ------------------------------------------------------------------------------------------
6349:
6350: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
6351: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
6352: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
6353: -- call ADRs
6354: -- Bug 4922099
6355: --
6371: , x_value_type_code => l_adr_value_type_code
6372: , p_side => 'NA'
6373: );
6374:
6375: xla_ae_lines_pkg.set_ccid(
6376: p_code_combination_id => l_ccid
6377: , p_value_type_code => l_adr_value_type_code
6378: , p_transaction_coa_id => l_adr_transaction_coa_id
6379: , p_accounting_coa_id => l_adr_accounting_coa_id
6394:
6395: --
6396: -- Update the line information that should be overwritten
6397: --
6398: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6399: p_header_num => 1);
6400: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6401:
6402: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6396: -- Update the line information that should be overwritten
6397: --
6398: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6399: p_header_num => 1);
6400: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6401:
6402: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6403:
6404: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6398: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6399: p_header_num => 1);
6400: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6401:
6402: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6403:
6404: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6405: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
6406: END IF;
6401:
6402: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6403:
6404: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6405: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
6406: END IF;
6407:
6408: --
6409: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
6408: --
6409: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
6410: --
6411: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
6412: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
6413: ELSE
6414: ---------------------------------------------------------------------------------------------------
6415: -- 4262811a Switch Sign
6416: ---------------------------------------------------------------------------------------------------
6413: ELSE
6414: ---------------------------------------------------------------------------------------------------
6415: -- 4262811a Switch Sign
6416: ---------------------------------------------------------------------------------------------------
6417: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6418: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6419: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6420: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6421: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6414: ---------------------------------------------------------------------------------------------------
6415: -- 4262811a Switch Sign
6416: ---------------------------------------------------------------------------------------------------
6417: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6418: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6419: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6420: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6421: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6422: -- 5132302
6415: -- 4262811a Switch Sign
6416: ---------------------------------------------------------------------------------------------------
6417: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6418: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6419: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6420: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6421: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6422: -- 5132302
6423: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6416: ---------------------------------------------------------------------------------------------------
6417: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6418: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6419: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6420: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6421: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6422: -- 5132302
6423: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6424: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6417: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6418: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6419: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6420: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6421: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6422: -- 5132302
6423: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6424: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6425:
6419: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6420: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6421: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6422: -- 5132302
6423: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6424: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6425:
6426: END IF;
6427:
6420: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6421: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6422: -- 5132302
6423: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6424: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6425:
6426: END IF;
6427:
6428: -- 4955764
6425:
6426: END IF;
6427:
6428: -- 4955764
6429: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6430: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6431:
6432:
6433: XLA_AE_LINES_PKG.ValidateCurrentLine;
6429: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6430: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6431:
6432:
6433: XLA_AE_LINES_PKG.ValidateCurrentLine;
6434: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
6435:
6436: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
6437: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
6430: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6431:
6432:
6433: XLA_AE_LINES_PKG.ValidateCurrentLine;
6434: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
6435:
6436: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
6437: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
6438: ,p_balance_type_code => l_balance_type_code);
6569: --
6570: -- bulk performance
6571: --
6572: l_balance_type_code VARCHAR2(1);
6573: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
6574: l_log_module VARCHAR2(240);
6575:
6576: --
6577: -- Upgrade strategy
6637: ') = 'ADJ_NON_REC_TAX'
6638: THEN
6639:
6640: --
6641: XLA_AE_LINES_PKG.SetNewLine;
6642:
6643: p_balance_type_code := l_balance_type_code;
6644: -- set the flag so later we will know whether the gain loss line needs to be created
6645:
6649:
6650: --
6651: -- bulk performance
6652: --
6653: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
6654: p_header_num => 0); -- 4262811
6655: --
6656: -- set accounting line options
6657: --
6654: p_header_num => 0); -- 4262811
6655: --
6656: -- set accounting line options
6657: --
6658: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
6659: p_natural_side_code => 'C'
6660: , p_gain_or_loss_flag => 'N'
6661: , p_gl_transfer_mode_code => 'S'
6662: , p_acct_entry_type_code => 'A'
6668: --
6669: --
6670: -- set accounting line type info
6671: --
6672: xla_ae_lines_pkg.SetAcctLineType
6673: (p_component_type => l_component_type
6674: ,p_event_type_code => l_event_type_code
6675: ,p_line_definition_owner_code => l_line_definition_owner_code
6676: ,p_line_definition_code => l_line_definition_code
6682: ,p_event_class_code => l_event_class_code);
6683: --
6684: -- set accounting class
6685: --
6686: xla_ae_lines_pkg.SetAcctClass(
6687: p_accounting_class_code => 'ADJ_NON_REC_TAX'
6688: , p_ae_header_id => l_ae_header_id
6689: );
6690:
6690:
6691: --
6692: -- set rounding class
6693: --
6694: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
6695: 'RECEIVABLE';
6696:
6697: --
6698: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
6694: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
6695: 'RECEIVABLE';
6696:
6697: --
6698: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
6699: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
6700: --
6701: -- bulk performance
6702: --
6695: 'RECEIVABLE';
6696:
6697: --
6698: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
6699: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
6700: --
6701: -- bulk performance
6702: --
6703: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
6699: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
6700: --
6701: -- bulk performance
6702: --
6703: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
6704:
6705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
6706: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
6707:
6701: -- bulk performance
6702: --
6703: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
6704:
6705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
6706: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
6707:
6708: -- 4955764
6709: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
6706: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
6707:
6708: -- 4955764
6709: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6710: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
6711:
6712: -- 4458381 Public Sector Enh
6713:
6739: l_rec_acct_attrs.array_num_value(10) := p_source_38;
6740: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
6741: l_rec_acct_attrs.array_char_value(11) := p_source_39;
6742:
6743: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
6744: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
6745:
6746: ---------------------------------------------------------------------------------------------------------------
6747: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6740: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
6741: l_rec_acct_attrs.array_char_value(11) := p_source_39;
6742:
6743: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
6744: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
6745:
6746: ---------------------------------------------------------------------------------------------------------------
6747: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6748: ---------------------------------------------------------------------------------------------------------------
6743: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
6744: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
6745:
6746: ---------------------------------------------------------------------------------------------------------------
6747: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6748: ---------------------------------------------------------------------------------------------------------------
6749: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6750:
6751: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6745:
6746: ---------------------------------------------------------------------------------------------------------------
6747: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6748: ---------------------------------------------------------------------------------------------------------------
6749: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6750:
6751: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6752: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6753:
6747: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6748: ---------------------------------------------------------------------------------------------------------------
6749: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6750:
6751: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6752: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6753:
6754: IF xla_accounting_cache_pkg.GetValueChar
6755: (p_source_code => 'LEDGER_CATEGORY_CODE'
6748: ---------------------------------------------------------------------------------------------------------------
6749: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6750:
6751: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6752: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6753:
6754: IF xla_accounting_cache_pkg.GetValueChar
6755: (p_source_code => 'LEDGER_CATEGORY_CODE'
6756: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
6759: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
6760: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
6761: )
6762: THEN
6763: xla_ae_lines_pkg.BflowUpgEntry
6764: (p_business_method_code => l_bflow_method_code
6765: ,p_business_class_code => l_bflow_class_code
6766: ,p_balance_type => l_balance_type_code);
6767: ELSE
6799: , x_value_type_code => l_adr_value_type_code
6800: , p_side => 'NA'
6801: );
6802:
6803: xla_ae_lines_pkg.set_ccid(
6804: p_code_combination_id => l_ccid
6805: , p_value_type_code => l_adr_value_type_code
6806: , p_transaction_coa_id => l_adr_transaction_coa_id
6807: , p_accounting_coa_id => l_adr_accounting_coa_id
6835: xla_accounting_err_pkg.build_message
6836: (p_appli_s_name => 'XLA'
6837: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
6838: ,p_token_1 => 'LINE_NUMBER'
6839: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
6840: ,p_token_2 => 'LINE_TYPE_NAME'
6841: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
6842: l_component_type
6843: ,l_component_code
6871: --
6872: --
6873: ------------------------------------------------------------------------------------------------
6874: -- 4219869 Business Flow
6875: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
6876: -- Prior Entry. Currently, the following code is always generated.
6877: ------------------------------------------------------------------------------------------------
6878: XLA_AE_LINES_PKG.ValidateCurrentLine;
6879:
6874: -- 4219869 Business Flow
6875: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
6876: -- Prior Entry. Currently, the following code is always generated.
6877: ------------------------------------------------------------------------------------------------
6878: XLA_AE_LINES_PKG.ValidateCurrentLine;
6879:
6880: ------------------------------------------------------------------------------------
6881: -- 4219869 Business Flow
6882: -- Populated credit and debit amounts -- Need to generate this within IF
6880: ------------------------------------------------------------------------------------
6881: -- 4219869 Business Flow
6882: -- Populated credit and debit amounts -- Need to generate this within IF
6883: ------------------------------------------------------------------------------------
6884: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
6885:
6886: ----------------------------------------------------------------------------------
6887: -- 4219869 Business Flow
6888: -- Update journal entry status -- Need to generate this within IF
6912: -- To allow MPA report to determine if it should generate report process
6913: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
6914: ------------------------------------------------------------------------------------------
6915:
6916: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
6917: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
6918: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
6919: -- call ADRs
6920: -- Bug 4922099
6913: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
6914: ------------------------------------------------------------------------------------------
6915:
6916: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
6917: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
6918: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
6919: -- call ADRs
6920: -- Bug 4922099
6921: --
6937: , x_value_type_code => l_adr_value_type_code
6938: , p_side => 'NA'
6939: );
6940:
6941: xla_ae_lines_pkg.set_ccid(
6942: p_code_combination_id => l_ccid
6943: , p_value_type_code => l_adr_value_type_code
6944: , p_transaction_coa_id => l_adr_transaction_coa_id
6945: , p_accounting_coa_id => l_adr_accounting_coa_id
6960:
6961: --
6962: -- Update the line information that should be overwritten
6963: --
6964: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6965: p_header_num => 1);
6966: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6967:
6968: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6962: -- Update the line information that should be overwritten
6963: --
6964: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6965: p_header_num => 1);
6966: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6967:
6968: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6969:
6970: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6964: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6965: p_header_num => 1);
6966: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6967:
6968: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6969:
6970: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6971: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
6972: END IF;
6967:
6968: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6969:
6970: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6971: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
6972: END IF;
6973:
6974: --
6975: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
6974: --
6975: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
6976: --
6977: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
6978: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
6979: ELSE
6980: ---------------------------------------------------------------------------------------------------
6981: -- 4262811a Switch Sign
6982: ---------------------------------------------------------------------------------------------------
6979: ELSE
6980: ---------------------------------------------------------------------------------------------------
6981: -- 4262811a Switch Sign
6982: ---------------------------------------------------------------------------------------------------
6983: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6984: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6985: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6986: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6987: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6980: ---------------------------------------------------------------------------------------------------
6981: -- 4262811a Switch Sign
6982: ---------------------------------------------------------------------------------------------------
6983: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6984: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6985: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6986: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6987: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6988: -- 5132302
6981: -- 4262811a Switch Sign
6982: ---------------------------------------------------------------------------------------------------
6983: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6984: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6985: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6986: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6987: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6988: -- 5132302
6989: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6982: ---------------------------------------------------------------------------------------------------
6983: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6984: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6985: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6986: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6987: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6988: -- 5132302
6989: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6990: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6983: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6984: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6985: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6986: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6987: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6988: -- 5132302
6989: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6990: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6991:
6985: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6986: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6987: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6988: -- 5132302
6989: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6990: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6991:
6992: END IF;
6993:
6986: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6987: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6988: -- 5132302
6989: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6990: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6991:
6992: END IF;
6993:
6994: -- 4955764
6991:
6992: END IF;
6993:
6994: -- 4955764
6995: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6996: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6997:
6998:
6999: XLA_AE_LINES_PKG.ValidateCurrentLine;
6995: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6996: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6997:
6998:
6999: XLA_AE_LINES_PKG.ValidateCurrentLine;
7000: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7001:
7002: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
7003: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
6996: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6997:
6998:
6999: XLA_AE_LINES_PKG.ValidateCurrentLine;
7000: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7001:
7002: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
7003: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
7004: ,p_balance_type_code => l_balance_type_code);
7135: --
7136: -- bulk performance
7137: --
7138: l_balance_type_code VARCHAR2(1);
7139: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
7140: l_log_module VARCHAR2(240);
7141:
7142: --
7143: -- Upgrade strategy
7203: ') = 'TAX'
7204: THEN
7205:
7206: --
7207: XLA_AE_LINES_PKG.SetNewLine;
7208:
7209: p_balance_type_code := l_balance_type_code;
7210: -- set the flag so later we will know whether the gain loss line needs to be created
7211:
7215:
7216: --
7217: -- bulk performance
7218: --
7219: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
7220: p_header_num => 0); -- 4262811
7221: --
7222: -- set accounting line options
7223: --
7220: p_header_num => 0); -- 4262811
7221: --
7222: -- set accounting line options
7223: --
7224: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
7225: p_natural_side_code => 'C'
7226: , p_gain_or_loss_flag => 'N'
7227: , p_gl_transfer_mode_code => 'S'
7228: , p_acct_entry_type_code => 'A'
7234: --
7235: --
7236: -- set accounting line type info
7237: --
7238: xla_ae_lines_pkg.SetAcctLineType
7239: (p_component_type => l_component_type
7240: ,p_event_type_code => l_event_type_code
7241: ,p_line_definition_owner_code => l_line_definition_owner_code
7242: ,p_line_definition_code => l_line_definition_code
7248: ,p_event_class_code => l_event_class_code);
7249: --
7250: -- set accounting class
7251: --
7252: xla_ae_lines_pkg.SetAcctClass(
7253: p_accounting_class_code => 'TAX'
7254: , p_ae_header_id => l_ae_header_id
7255: );
7256:
7256:
7257: --
7258: -- set rounding class
7259: --
7260: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
7261: 'RECEIVABLE';
7262:
7263: --
7264: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7260: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
7261: 'RECEIVABLE';
7262:
7263: --
7264: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7265: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7266: --
7267: -- bulk performance
7268: --
7261: 'RECEIVABLE';
7262:
7263: --
7264: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7265: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7266: --
7267: -- bulk performance
7268: --
7269: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7265: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7266: --
7267: -- bulk performance
7268: --
7269: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7270:
7271: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7272: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7273:
7267: -- bulk performance
7268: --
7269: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7270:
7271: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7272: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7273:
7274: -- 4955764
7275: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7271: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7272: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7273:
7274: -- 4955764
7275: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7276: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
7277:
7278: -- 4458381 Public Sector Enh
7279:
7305: l_rec_acct_attrs.array_num_value(10) := p_source_38;
7306: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
7307: l_rec_acct_attrs.array_char_value(11) := p_source_39;
7308:
7309: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7310: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7311:
7312: ---------------------------------------------------------------------------------------------------------------
7313: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7306: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
7307: l_rec_acct_attrs.array_char_value(11) := p_source_39;
7308:
7309: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7310: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7311:
7312: ---------------------------------------------------------------------------------------------------------------
7313: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7314: ---------------------------------------------------------------------------------------------------------------
7309: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7310: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7311:
7312: ---------------------------------------------------------------------------------------------------------------
7313: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7314: ---------------------------------------------------------------------------------------------------------------
7315: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7316:
7317: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7311:
7312: ---------------------------------------------------------------------------------------------------------------
7313: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7314: ---------------------------------------------------------------------------------------------------------------
7315: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7316:
7317: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7318: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7319:
7313: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7314: ---------------------------------------------------------------------------------------------------------------
7315: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7316:
7317: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7318: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7319:
7320: IF xla_accounting_cache_pkg.GetValueChar
7321: (p_source_code => 'LEDGER_CATEGORY_CODE'
7314: ---------------------------------------------------------------------------------------------------------------
7315: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7316:
7317: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7318: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7319:
7320: IF xla_accounting_cache_pkg.GetValueChar
7321: (p_source_code => 'LEDGER_CATEGORY_CODE'
7322: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
7325: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
7326: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
7327: )
7328: THEN
7329: xla_ae_lines_pkg.BflowUpgEntry
7330: (p_business_method_code => l_bflow_method_code
7331: ,p_business_class_code => l_bflow_class_code
7332: ,p_balance_type => l_balance_type_code);
7333: ELSE
7365: , x_value_type_code => l_adr_value_type_code
7366: , p_side => 'NA'
7367: );
7368:
7369: xla_ae_lines_pkg.set_ccid(
7370: p_code_combination_id => l_ccid
7371: , p_value_type_code => l_adr_value_type_code
7372: , p_transaction_coa_id => l_adr_transaction_coa_id
7373: , p_accounting_coa_id => l_adr_accounting_coa_id
7401: xla_accounting_err_pkg.build_message
7402: (p_appli_s_name => 'XLA'
7403: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
7404: ,p_token_1 => 'LINE_NUMBER'
7405: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
7406: ,p_token_2 => 'LINE_TYPE_NAME'
7407: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
7408: l_component_type
7409: ,l_component_code
7437: --
7438: --
7439: ------------------------------------------------------------------------------------------------
7440: -- 4219869 Business Flow
7441: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
7442: -- Prior Entry. Currently, the following code is always generated.
7443: ------------------------------------------------------------------------------------------------
7444: XLA_AE_LINES_PKG.ValidateCurrentLine;
7445:
7440: -- 4219869 Business Flow
7441: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
7442: -- Prior Entry. Currently, the following code is always generated.
7443: ------------------------------------------------------------------------------------------------
7444: XLA_AE_LINES_PKG.ValidateCurrentLine;
7445:
7446: ------------------------------------------------------------------------------------
7447: -- 4219869 Business Flow
7448: -- Populated credit and debit amounts -- Need to generate this within IF
7446: ------------------------------------------------------------------------------------
7447: -- 4219869 Business Flow
7448: -- Populated credit and debit amounts -- Need to generate this within IF
7449: ------------------------------------------------------------------------------------
7450: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7451:
7452: ----------------------------------------------------------------------------------
7453: -- 4219869 Business Flow
7454: -- Update journal entry status -- Need to generate this within IF
7478: -- To allow MPA report to determine if it should generate report process
7479: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
7480: ------------------------------------------------------------------------------------------
7481:
7482: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
7483: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
7484: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
7485: -- call ADRs
7486: -- Bug 4922099
7479: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
7480: ------------------------------------------------------------------------------------------
7481:
7482: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
7483: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
7484: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
7485: -- call ADRs
7486: -- Bug 4922099
7487: --
7503: , x_value_type_code => l_adr_value_type_code
7504: , p_side => 'NA'
7505: );
7506:
7507: xla_ae_lines_pkg.set_ccid(
7508: p_code_combination_id => l_ccid
7509: , p_value_type_code => l_adr_value_type_code
7510: , p_transaction_coa_id => l_adr_transaction_coa_id
7511: , p_accounting_coa_id => l_adr_accounting_coa_id
7526:
7527: --
7528: -- Update the line information that should be overwritten
7529: --
7530: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7531: p_header_num => 1);
7532: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7533:
7534: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7528: -- Update the line information that should be overwritten
7529: --
7530: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7531: p_header_num => 1);
7532: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7533:
7534: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7535:
7536: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7530: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7531: p_header_num => 1);
7532: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7533:
7534: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7535:
7536: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7537: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
7538: END IF;
7533:
7534: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7535:
7536: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7537: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
7538: END IF;
7539:
7540: --
7541: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
7540: --
7541: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
7542: --
7543: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
7544: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
7545: ELSE
7546: ---------------------------------------------------------------------------------------------------
7547: -- 4262811a Switch Sign
7548: ---------------------------------------------------------------------------------------------------
7545: ELSE
7546: ---------------------------------------------------------------------------------------------------
7547: -- 4262811a Switch Sign
7548: ---------------------------------------------------------------------------------------------------
7549: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7550: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7551: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7552: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7553: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7546: ---------------------------------------------------------------------------------------------------
7547: -- 4262811a Switch Sign
7548: ---------------------------------------------------------------------------------------------------
7549: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7550: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7551: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7552: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7553: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7554: -- 5132302
7547: -- 4262811a Switch Sign
7548: ---------------------------------------------------------------------------------------------------
7549: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7550: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7551: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7552: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7553: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7554: -- 5132302
7555: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7548: ---------------------------------------------------------------------------------------------------
7549: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7550: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7551: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7552: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7553: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7554: -- 5132302
7555: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7556: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7549: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7550: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7551: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7552: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7553: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7554: -- 5132302
7555: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7556: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7557:
7551: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7552: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7553: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7554: -- 5132302
7555: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7556: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7557:
7558: END IF;
7559:
7552: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7553: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7554: -- 5132302
7555: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7556: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7557:
7558: END IF;
7559:
7560: -- 4955764
7557:
7558: END IF;
7559:
7560: -- 4955764
7561: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7562: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7563:
7564:
7565: XLA_AE_LINES_PKG.ValidateCurrentLine;
7561: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7562: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7563:
7564:
7565: XLA_AE_LINES_PKG.ValidateCurrentLine;
7566: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7567:
7568: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
7569: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
7562: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7563:
7564:
7565: XLA_AE_LINES_PKG.ValidateCurrentLine;
7566: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7567:
7568: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
7569: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
7570: ,p_balance_type_code => l_balance_type_code);
7701: --
7702: -- bulk performance
7703: --
7704: l_balance_type_code VARCHAR2(1);
7705: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
7706: l_log_module VARCHAR2(240);
7707:
7708: --
7709: -- Upgrade strategy
7769: ') = 'DEFERRED_TAX'
7770: THEN
7771:
7772: --
7773: XLA_AE_LINES_PKG.SetNewLine;
7774:
7775: p_balance_type_code := l_balance_type_code;
7776: -- set the flag so later we will know whether the gain loss line needs to be created
7777:
7781:
7782: --
7783: -- bulk performance
7784: --
7785: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
7786: p_header_num => 0); -- 4262811
7787: --
7788: -- set accounting line options
7789: --
7786: p_header_num => 0); -- 4262811
7787: --
7788: -- set accounting line options
7789: --
7790: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
7791: p_natural_side_code => 'C'
7792: , p_gain_or_loss_flag => 'N'
7793: , p_gl_transfer_mode_code => 'S'
7794: , p_acct_entry_type_code => 'A'
7800: --
7801: --
7802: -- set accounting line type info
7803: --
7804: xla_ae_lines_pkg.SetAcctLineType
7805: (p_component_type => l_component_type
7806: ,p_event_type_code => l_event_type_code
7807: ,p_line_definition_owner_code => l_line_definition_owner_code
7808: ,p_line_definition_code => l_line_definition_code
7814: ,p_event_class_code => l_event_class_code);
7815: --
7816: -- set accounting class
7817: --
7818: xla_ae_lines_pkg.SetAcctClass(
7819: p_accounting_class_code => 'DEFERRED_TAX'
7820: , p_ae_header_id => l_ae_header_id
7821: );
7822:
7822:
7823: --
7824: -- set rounding class
7825: --
7826: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
7827: 'DEFERRED_TAX';
7828:
7829: --
7830: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7826: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
7827: 'DEFERRED_TAX';
7828:
7829: --
7830: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7831: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7832: --
7833: -- bulk performance
7834: --
7827: 'DEFERRED_TAX';
7828:
7829: --
7830: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7831: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7832: --
7833: -- bulk performance
7834: --
7835: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7831: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7832: --
7833: -- bulk performance
7834: --
7835: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7836:
7837: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7838: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7839:
7833: -- bulk performance
7834: --
7835: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7836:
7837: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7838: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7839:
7840: -- 4955764
7841: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7837: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7838: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7839:
7840: -- 4955764
7841: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7842: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
7843:
7844: -- 4458381 Public Sector Enh
7845:
7871: l_rec_acct_attrs.array_num_value(10) := p_source_42;
7872: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
7873: l_rec_acct_attrs.array_char_value(11) := p_source_39;
7874:
7875: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7876: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7877:
7878: ---------------------------------------------------------------------------------------------------------------
7879: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7872: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
7873: l_rec_acct_attrs.array_char_value(11) := p_source_39;
7874:
7875: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7876: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7877:
7878: ---------------------------------------------------------------------------------------------------------------
7879: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7880: ---------------------------------------------------------------------------------------------------------------
7875: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7876: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7877:
7878: ---------------------------------------------------------------------------------------------------------------
7879: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7880: ---------------------------------------------------------------------------------------------------------------
7881: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7882:
7883: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7877:
7878: ---------------------------------------------------------------------------------------------------------------
7879: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7880: ---------------------------------------------------------------------------------------------------------------
7881: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7882:
7883: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7884: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7885:
7879: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7880: ---------------------------------------------------------------------------------------------------------------
7881: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7882:
7883: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7884: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7885:
7886: IF xla_accounting_cache_pkg.GetValueChar
7887: (p_source_code => 'LEDGER_CATEGORY_CODE'
7880: ---------------------------------------------------------------------------------------------------------------
7881: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7882:
7883: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7884: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7885:
7886: IF xla_accounting_cache_pkg.GetValueChar
7887: (p_source_code => 'LEDGER_CATEGORY_CODE'
7888: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
7891: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
7892: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
7893: )
7894: THEN
7895: xla_ae_lines_pkg.BflowUpgEntry
7896: (p_business_method_code => l_bflow_method_code
7897: ,p_business_class_code => l_bflow_class_code
7898: ,p_balance_type => l_balance_type_code);
7899: ELSE
7931: , x_value_type_code => l_adr_value_type_code
7932: , p_side => 'NA'
7933: );
7934:
7935: xla_ae_lines_pkg.set_ccid(
7936: p_code_combination_id => l_ccid
7937: , p_value_type_code => l_adr_value_type_code
7938: , p_transaction_coa_id => l_adr_transaction_coa_id
7939: , p_accounting_coa_id => l_adr_accounting_coa_id
7967: xla_accounting_err_pkg.build_message
7968: (p_appli_s_name => 'XLA'
7969: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
7970: ,p_token_1 => 'LINE_NUMBER'
7971: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
7972: ,p_token_2 => 'LINE_TYPE_NAME'
7973: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
7974: l_component_type
7975: ,l_component_code
8003: --
8004: --
8005: ------------------------------------------------------------------------------------------------
8006: -- 4219869 Business Flow
8007: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
8008: -- Prior Entry. Currently, the following code is always generated.
8009: ------------------------------------------------------------------------------------------------
8010: XLA_AE_LINES_PKG.ValidateCurrentLine;
8011:
8006: -- 4219869 Business Flow
8007: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
8008: -- Prior Entry. Currently, the following code is always generated.
8009: ------------------------------------------------------------------------------------------------
8010: XLA_AE_LINES_PKG.ValidateCurrentLine;
8011:
8012: ------------------------------------------------------------------------------------
8013: -- 4219869 Business Flow
8014: -- Populated credit and debit amounts -- Need to generate this within IF
8012: ------------------------------------------------------------------------------------
8013: -- 4219869 Business Flow
8014: -- Populated credit and debit amounts -- Need to generate this within IF
8015: ------------------------------------------------------------------------------------
8016: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
8017:
8018: ----------------------------------------------------------------------------------
8019: -- 4219869 Business Flow
8020: -- Update journal entry status -- Need to generate this within IF
8044: -- To allow MPA report to determine if it should generate report process
8045: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
8046: ------------------------------------------------------------------------------------------
8047:
8048: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
8049: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
8050: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
8051: -- call ADRs
8052: -- Bug 4922099
8045: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
8046: ------------------------------------------------------------------------------------------
8047:
8048: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
8049: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
8050: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
8051: -- call ADRs
8052: -- Bug 4922099
8053: --
8069: , x_value_type_code => l_adr_value_type_code
8070: , p_side => 'NA'
8071: );
8072:
8073: xla_ae_lines_pkg.set_ccid(
8074: p_code_combination_id => l_ccid
8075: , p_value_type_code => l_adr_value_type_code
8076: , p_transaction_coa_id => l_adr_transaction_coa_id
8077: , p_accounting_coa_id => l_adr_accounting_coa_id
8092:
8093: --
8094: -- Update the line information that should be overwritten
8095: --
8096: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
8097: p_header_num => 1);
8098: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
8099:
8100: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8094: -- Update the line information that should be overwritten
8095: --
8096: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
8097: p_header_num => 1);
8098: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
8099:
8100: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8101:
8102: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
8096: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
8097: p_header_num => 1);
8098: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
8099:
8100: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8101:
8102: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
8103: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
8104: END IF;
8099:
8100: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8101:
8102: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
8103: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
8104: END IF;
8105:
8106: --
8107: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
8106: --
8107: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
8108: --
8109: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
8110: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
8111: ELSE
8112: ---------------------------------------------------------------------------------------------------
8113: -- 4262811a Switch Sign
8114: ---------------------------------------------------------------------------------------------------
8111: ELSE
8112: ---------------------------------------------------------------------------------------------------
8113: -- 4262811a Switch Sign
8114: ---------------------------------------------------------------------------------------------------
8115: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8116: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8117: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8118: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8119: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8112: ---------------------------------------------------------------------------------------------------
8113: -- 4262811a Switch Sign
8114: ---------------------------------------------------------------------------------------------------
8115: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8116: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8117: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8118: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8119: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8120: -- 5132302
8113: -- 4262811a Switch Sign
8114: ---------------------------------------------------------------------------------------------------
8115: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8116: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8117: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8118: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8119: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8120: -- 5132302
8121: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8114: ---------------------------------------------------------------------------------------------------
8115: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8116: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8117: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8118: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8119: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8120: -- 5132302
8121: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8122: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8115: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8116: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8117: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8118: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8119: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8120: -- 5132302
8121: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8122: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8123:
8117: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8118: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8119: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8120: -- 5132302
8121: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8122: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8123:
8124: END IF;
8125:
8118: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8119: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8120: -- 5132302
8121: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8122: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8123:
8124: END IF;
8125:
8126: -- 4955764
8123:
8124: END IF;
8125:
8126: -- 4955764
8127: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8128: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
8129:
8130:
8131: XLA_AE_LINES_PKG.ValidateCurrentLine;
8127: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8128: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
8129:
8130:
8131: XLA_AE_LINES_PKG.ValidateCurrentLine;
8132: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
8133:
8134: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
8135: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
8128: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
8129:
8130:
8131: XLA_AE_LINES_PKG.ValidateCurrentLine;
8132: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
8133:
8134: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
8135: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
8136: ,p_balance_type_code => l_balance_type_code);
8267: --
8268: -- bulk performance
8269: --
8270: l_balance_type_code VARCHAR2(1);
8271: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
8272: l_log_module VARCHAR2(240);
8273:
8274: --
8275: -- Upgrade strategy
8335: ') = 'FACTOR'
8336: THEN
8337:
8338: --
8339: XLA_AE_LINES_PKG.SetNewLine;
8340:
8341: p_balance_type_code := l_balance_type_code;
8342: -- set the flag so later we will know whether the gain loss line needs to be created
8343:
8347:
8348: --
8349: -- bulk performance
8350: --
8351: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
8352: p_header_num => 0); -- 4262811
8353: --
8354: -- set accounting line options
8355: --
8352: p_header_num => 0); -- 4262811
8353: --
8354: -- set accounting line options
8355: --
8356: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
8357: p_natural_side_code => 'C'
8358: , p_gain_or_loss_flag => 'N'
8359: , p_gl_transfer_mode_code => 'S'
8360: , p_acct_entry_type_code => 'A'
8366: --
8367: --
8368: -- set accounting line type info
8369: --
8370: xla_ae_lines_pkg.SetAcctLineType
8371: (p_component_type => l_component_type
8372: ,p_event_type_code => l_event_type_code
8373: ,p_line_definition_owner_code => l_line_definition_owner_code
8374: ,p_line_definition_code => l_line_definition_code
8380: ,p_event_class_code => l_event_class_code);
8381: --
8382: -- set accounting class
8383: --
8384: xla_ae_lines_pkg.SetAcctClass(
8385: p_accounting_class_code => 'FAC_BR'
8386: , p_ae_header_id => l_ae_header_id
8387: );
8388:
8388:
8389: --
8390: -- set rounding class
8391: --
8392: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
8393: 'FAC_BR';
8394:
8395: --
8396: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8392: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
8393: 'FAC_BR';
8394:
8395: --
8396: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8397: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8398: --
8399: -- bulk performance
8400: --
8393: 'FAC_BR';
8394:
8395: --
8396: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8397: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8398: --
8399: -- bulk performance
8400: --
8401: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8397: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8398: --
8399: -- bulk performance
8400: --
8401: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8402:
8403: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8404: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8405:
8399: -- bulk performance
8400: --
8401: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8402:
8403: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8404: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8405:
8406: -- 4955764
8407: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8403: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8404: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8405:
8406: -- 4955764
8407: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8408: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
8409:
8410: -- 4458381 Public Sector Enh
8411:
8437: l_rec_acct_attrs.array_num_value(10) := p_source_42;
8438: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
8439: l_rec_acct_attrs.array_char_value(11) := p_source_39;
8440:
8441: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
8442: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
8443:
8444: ---------------------------------------------------------------------------------------------------------------
8445: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8438: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
8439: l_rec_acct_attrs.array_char_value(11) := p_source_39;
8440:
8441: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
8442: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
8443:
8444: ---------------------------------------------------------------------------------------------------------------
8445: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8446: ---------------------------------------------------------------------------------------------------------------
8441: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
8442: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
8443:
8444: ---------------------------------------------------------------------------------------------------------------
8445: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8446: ---------------------------------------------------------------------------------------------------------------
8447: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8448:
8449: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8443:
8444: ---------------------------------------------------------------------------------------------------------------
8445: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8446: ---------------------------------------------------------------------------------------------------------------
8447: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8448:
8449: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8450: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8451:
8445: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8446: ---------------------------------------------------------------------------------------------------------------
8447: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8448:
8449: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8450: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8451:
8452: IF xla_accounting_cache_pkg.GetValueChar
8453: (p_source_code => 'LEDGER_CATEGORY_CODE'
8446: ---------------------------------------------------------------------------------------------------------------
8447: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8448:
8449: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8450: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8451:
8452: IF xla_accounting_cache_pkg.GetValueChar
8453: (p_source_code => 'LEDGER_CATEGORY_CODE'
8454: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
8457: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
8458: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
8459: )
8460: THEN
8461: xla_ae_lines_pkg.BflowUpgEntry
8462: (p_business_method_code => l_bflow_method_code
8463: ,p_business_class_code => l_bflow_class_code
8464: ,p_balance_type => l_balance_type_code);
8465: ELSE
8497: , x_value_type_code => l_adr_value_type_code
8498: , p_side => 'NA'
8499: );
8500:
8501: xla_ae_lines_pkg.set_ccid(
8502: p_code_combination_id => l_ccid
8503: , p_value_type_code => l_adr_value_type_code
8504: , p_transaction_coa_id => l_adr_transaction_coa_id
8505: , p_accounting_coa_id => l_adr_accounting_coa_id
8533: xla_accounting_err_pkg.build_message
8534: (p_appli_s_name => 'XLA'
8535: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
8536: ,p_token_1 => 'LINE_NUMBER'
8537: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
8538: ,p_token_2 => 'LINE_TYPE_NAME'
8539: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
8540: l_component_type
8541: ,l_component_code
8569: --
8570: --
8571: ------------------------------------------------------------------------------------------------
8572: -- 4219869 Business Flow
8573: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
8574: -- Prior Entry. Currently, the following code is always generated.
8575: ------------------------------------------------------------------------------------------------
8576: XLA_AE_LINES_PKG.ValidateCurrentLine;
8577:
8572: -- 4219869 Business Flow
8573: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
8574: -- Prior Entry. Currently, the following code is always generated.
8575: ------------------------------------------------------------------------------------------------
8576: XLA_AE_LINES_PKG.ValidateCurrentLine;
8577:
8578: ------------------------------------------------------------------------------------
8579: -- 4219869 Business Flow
8580: -- Populated credit and debit amounts -- Need to generate this within IF
8578: ------------------------------------------------------------------------------------
8579: -- 4219869 Business Flow
8580: -- Populated credit and debit amounts -- Need to generate this within IF
8581: ------------------------------------------------------------------------------------
8582: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
8583:
8584: ----------------------------------------------------------------------------------
8585: -- 4219869 Business Flow
8586: -- Update journal entry status -- Need to generate this within IF
8610: -- To allow MPA report to determine if it should generate report process
8611: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
8612: ------------------------------------------------------------------------------------------
8613:
8614: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
8615: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
8616: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
8617: -- call ADRs
8618: -- Bug 4922099
8611: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
8612: ------------------------------------------------------------------------------------------
8613:
8614: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
8615: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
8616: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
8617: -- call ADRs
8618: -- Bug 4922099
8619: --
8635: , x_value_type_code => l_adr_value_type_code
8636: , p_side => 'NA'
8637: );
8638:
8639: xla_ae_lines_pkg.set_ccid(
8640: p_code_combination_id => l_ccid
8641: , p_value_type_code => l_adr_value_type_code
8642: , p_transaction_coa_id => l_adr_transaction_coa_id
8643: , p_accounting_coa_id => l_adr_accounting_coa_id
8658:
8659: --
8660: -- Update the line information that should be overwritten
8661: --
8662: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
8663: p_header_num => 1);
8664: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
8665:
8666: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8660: -- Update the line information that should be overwritten
8661: --
8662: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
8663: p_header_num => 1);
8664: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
8665:
8666: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8667:
8668: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
8662: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
8663: p_header_num => 1);
8664: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
8665:
8666: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8667:
8668: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
8669: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
8670: END IF;
8665:
8666: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8667:
8668: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
8669: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
8670: END IF;
8671:
8672: --
8673: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
8672: --
8673: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
8674: --
8675: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
8676: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
8677: ELSE
8678: ---------------------------------------------------------------------------------------------------
8679: -- 4262811a Switch Sign
8680: ---------------------------------------------------------------------------------------------------
8677: ELSE
8678: ---------------------------------------------------------------------------------------------------
8679: -- 4262811a Switch Sign
8680: ---------------------------------------------------------------------------------------------------
8681: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8682: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8683: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8684: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8678: ---------------------------------------------------------------------------------------------------
8679: -- 4262811a Switch Sign
8680: ---------------------------------------------------------------------------------------------------
8681: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8682: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8683: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8684: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8686: -- 5132302
8679: -- 4262811a Switch Sign
8680: ---------------------------------------------------------------------------------------------------
8681: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8682: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8683: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8684: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8686: -- 5132302
8687: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8680: ---------------------------------------------------------------------------------------------------
8681: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8682: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8683: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8684: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8686: -- 5132302
8687: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8688: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8681: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8682: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8683: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8684: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8686: -- 5132302
8687: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8688: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8689:
8683: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8684: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8686: -- 5132302
8687: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8688: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8689:
8690: END IF;
8691:
8684: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8686: -- 5132302
8687: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8688: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8689:
8690: END IF;
8691:
8692: -- 4955764
8689:
8690: END IF;
8691:
8692: -- 4955764
8693: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8694: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
8695:
8696:
8697: XLA_AE_LINES_PKG.ValidateCurrentLine;
8693: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8694: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
8695:
8696:
8697: XLA_AE_LINES_PKG.ValidateCurrentLine;
8698: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
8699:
8700: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
8701: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
8694: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
8695:
8696:
8697: XLA_AE_LINES_PKG.ValidateCurrentLine;
8698: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
8699:
8700: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
8701: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
8702: ,p_balance_type_code => l_balance_type_code);
8833: --
8834: -- bulk performance
8835: --
8836: l_balance_type_code VARCHAR2(1);
8837: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
8838: l_log_module VARCHAR2(240);
8839:
8840: --
8841: -- Upgrade strategy
8901: ') = 'REC'
8902: THEN
8903:
8904: --
8905: XLA_AE_LINES_PKG.SetNewLine;
8906:
8907: p_balance_type_code := l_balance_type_code;
8908: -- set the flag so later we will know whether the gain loss line needs to be created
8909:
8913:
8914: --
8915: -- bulk performance
8916: --
8917: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
8918: p_header_num => 0); -- 4262811
8919: --
8920: -- set accounting line options
8921: --
8918: p_header_num => 0); -- 4262811
8919: --
8920: -- set accounting line options
8921: --
8922: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
8923: p_natural_side_code => 'C'
8924: , p_gain_or_loss_flag => 'N'
8925: , p_gl_transfer_mode_code => 'S'
8926: , p_acct_entry_type_code => 'A'
8932: --
8933: --
8934: -- set accounting line type info
8935: --
8936: xla_ae_lines_pkg.SetAcctLineType
8937: (p_component_type => l_component_type
8938: ,p_event_type_code => l_event_type_code
8939: ,p_line_definition_owner_code => l_line_definition_owner_code
8940: ,p_line_definition_code => l_line_definition_code
8946: ,p_event_class_code => l_event_class_code);
8947: --
8948: -- set accounting class
8949: --
8950: xla_ae_lines_pkg.SetAcctClass(
8951: p_accounting_class_code => 'RECEIVABLE'
8952: , p_ae_header_id => l_ae_header_id
8953: );
8954:
8954:
8955: --
8956: -- set rounding class
8957: --
8958: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
8959: 'RECEIVABLE';
8960:
8961: --
8962: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8958: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
8959: 'RECEIVABLE';
8960:
8961: --
8962: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8963: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8964: --
8965: -- bulk performance
8966: --
8959: 'RECEIVABLE';
8960:
8961: --
8962: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8963: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8964: --
8965: -- bulk performance
8966: --
8967: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8963: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8964: --
8965: -- bulk performance
8966: --
8967: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8968:
8969: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8970: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8971:
8965: -- bulk performance
8966: --
8967: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8968:
8969: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8970: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8971:
8972: -- 4955764
8973: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8969: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8970: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8971:
8972: -- 4955764
8973: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8974: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
8975:
8976: -- 4458381 Public Sector Enh
8977:
9003: l_rec_acct_attrs.array_num_value(10) := p_source_42;
9004: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
9005: l_rec_acct_attrs.array_char_value(11) := p_source_39;
9006:
9007: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9008: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9009:
9010: ---------------------------------------------------------------------------------------------------------------
9011: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9004: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
9005: l_rec_acct_attrs.array_char_value(11) := p_source_39;
9006:
9007: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9008: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9009:
9010: ---------------------------------------------------------------------------------------------------------------
9011: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9012: ---------------------------------------------------------------------------------------------------------------
9007: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9008: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9009:
9010: ---------------------------------------------------------------------------------------------------------------
9011: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9012: ---------------------------------------------------------------------------------------------------------------
9013: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9014:
9015: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9009:
9010: ---------------------------------------------------------------------------------------------------------------
9011: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9012: ---------------------------------------------------------------------------------------------------------------
9013: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9014:
9015: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9016: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9017:
9011: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9012: ---------------------------------------------------------------------------------------------------------------
9013: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9014:
9015: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9016: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9017:
9018: IF xla_accounting_cache_pkg.GetValueChar
9019: (p_source_code => 'LEDGER_CATEGORY_CODE'
9012: ---------------------------------------------------------------------------------------------------------------
9013: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9014:
9015: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9016: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9017:
9018: IF xla_accounting_cache_pkg.GetValueChar
9019: (p_source_code => 'LEDGER_CATEGORY_CODE'
9020: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
9023: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
9024: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
9025: )
9026: THEN
9027: xla_ae_lines_pkg.BflowUpgEntry
9028: (p_business_method_code => l_bflow_method_code
9029: ,p_business_class_code => l_bflow_class_code
9030: ,p_balance_type => l_balance_type_code);
9031: ELSE
9063: , x_value_type_code => l_adr_value_type_code
9064: , p_side => 'NA'
9065: );
9066:
9067: xla_ae_lines_pkg.set_ccid(
9068: p_code_combination_id => l_ccid
9069: , p_value_type_code => l_adr_value_type_code
9070: , p_transaction_coa_id => l_adr_transaction_coa_id
9071: , p_accounting_coa_id => l_adr_accounting_coa_id
9099: xla_accounting_err_pkg.build_message
9100: (p_appli_s_name => 'XLA'
9101: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
9102: ,p_token_1 => 'LINE_NUMBER'
9103: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
9104: ,p_token_2 => 'LINE_TYPE_NAME'
9105: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
9106: l_component_type
9107: ,l_component_code
9135: --
9136: --
9137: ------------------------------------------------------------------------------------------------
9138: -- 4219869 Business Flow
9139: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
9140: -- Prior Entry. Currently, the following code is always generated.
9141: ------------------------------------------------------------------------------------------------
9142: XLA_AE_LINES_PKG.ValidateCurrentLine;
9143:
9138: -- 4219869 Business Flow
9139: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
9140: -- Prior Entry. Currently, the following code is always generated.
9141: ------------------------------------------------------------------------------------------------
9142: XLA_AE_LINES_PKG.ValidateCurrentLine;
9143:
9144: ------------------------------------------------------------------------------------
9145: -- 4219869 Business Flow
9146: -- Populated credit and debit amounts -- Need to generate this within IF
9144: ------------------------------------------------------------------------------------
9145: -- 4219869 Business Flow
9146: -- Populated credit and debit amounts -- Need to generate this within IF
9147: ------------------------------------------------------------------------------------
9148: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9149:
9150: ----------------------------------------------------------------------------------
9151: -- 4219869 Business Flow
9152: -- Update journal entry status -- Need to generate this within IF
9176: -- To allow MPA report to determine if it should generate report process
9177: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
9178: ------------------------------------------------------------------------------------------
9179:
9180: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
9181: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
9182: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
9183: -- call ADRs
9184: -- Bug 4922099
9177: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
9178: ------------------------------------------------------------------------------------------
9179:
9180: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
9181: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
9182: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
9183: -- call ADRs
9184: -- Bug 4922099
9185: --
9201: , x_value_type_code => l_adr_value_type_code
9202: , p_side => 'NA'
9203: );
9204:
9205: xla_ae_lines_pkg.set_ccid(
9206: p_code_combination_id => l_ccid
9207: , p_value_type_code => l_adr_value_type_code
9208: , p_transaction_coa_id => l_adr_transaction_coa_id
9209: , p_accounting_coa_id => l_adr_accounting_coa_id
9224:
9225: --
9226: -- Update the line information that should be overwritten
9227: --
9228: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9229: p_header_num => 1);
9230: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9231:
9232: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9226: -- Update the line information that should be overwritten
9227: --
9228: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9229: p_header_num => 1);
9230: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9231:
9232: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9233:
9234: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9228: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9229: p_header_num => 1);
9230: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9231:
9232: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9233:
9234: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9235: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
9236: END IF;
9231:
9232: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9233:
9234: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9235: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
9236: END IF;
9237:
9238: --
9239: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
9238: --
9239: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
9240: --
9241: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
9242: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
9243: ELSE
9244: ---------------------------------------------------------------------------------------------------
9245: -- 4262811a Switch Sign
9246: ---------------------------------------------------------------------------------------------------
9243: ELSE
9244: ---------------------------------------------------------------------------------------------------
9245: -- 4262811a Switch Sign
9246: ---------------------------------------------------------------------------------------------------
9247: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9249: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9244: ---------------------------------------------------------------------------------------------------
9245: -- 4262811a Switch Sign
9246: ---------------------------------------------------------------------------------------------------
9247: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9249: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9252: -- 5132302
9245: -- 4262811a Switch Sign
9246: ---------------------------------------------------------------------------------------------------
9247: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9249: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9252: -- 5132302
9253: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9246: ---------------------------------------------------------------------------------------------------
9247: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9249: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9252: -- 5132302
9253: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9254: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9247: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9249: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9252: -- 5132302
9253: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9254: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9255:
9249: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9252: -- 5132302
9253: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9254: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9255:
9256: END IF;
9257:
9250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9252: -- 5132302
9253: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9254: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9255:
9256: END IF;
9257:
9258: -- 4955764
9255:
9256: END IF;
9257:
9258: -- 4955764
9259: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9260: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9261:
9262:
9263: XLA_AE_LINES_PKG.ValidateCurrentLine;
9259: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9260: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9261:
9262:
9263: XLA_AE_LINES_PKG.ValidateCurrentLine;
9264: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9265:
9266: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
9267: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
9260: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9261:
9262:
9263: XLA_AE_LINES_PKG.ValidateCurrentLine;
9264: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9265:
9266: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
9267: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
9268: ,p_balance_type_code => l_balance_type_code);
9399: --
9400: -- bulk performance
9401: --
9402: l_balance_type_code VARCHAR2(1);
9403: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
9404: l_log_module VARCHAR2(240);
9405:
9406: --
9407: -- Upgrade strategy
9467: ') = 'REMITTANCE'
9468: THEN
9469:
9470: --
9471: XLA_AE_LINES_PKG.SetNewLine;
9472:
9473: p_balance_type_code := l_balance_type_code;
9474: -- set the flag so later we will know whether the gain loss line needs to be created
9475:
9479:
9480: --
9481: -- bulk performance
9482: --
9483: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
9484: p_header_num => 0); -- 4262811
9485: --
9486: -- set accounting line options
9487: --
9484: p_header_num => 0); -- 4262811
9485: --
9486: -- set accounting line options
9487: --
9488: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
9489: p_natural_side_code => 'C'
9490: , p_gain_or_loss_flag => 'N'
9491: , p_gl_transfer_mode_code => 'S'
9492: , p_acct_entry_type_code => 'A'
9498: --
9499: --
9500: -- set accounting line type info
9501: --
9502: xla_ae_lines_pkg.SetAcctLineType
9503: (p_component_type => l_component_type
9504: ,p_event_type_code => l_event_type_code
9505: ,p_line_definition_owner_code => l_line_definition_owner_code
9506: ,p_line_definition_code => l_line_definition_code
9512: ,p_event_class_code => l_event_class_code);
9513: --
9514: -- set accounting class
9515: --
9516: xla_ae_lines_pkg.SetAcctClass(
9517: p_accounting_class_code => 'REM_BR'
9518: , p_ae_header_id => l_ae_header_id
9519: );
9520:
9520:
9521: --
9522: -- set rounding class
9523: --
9524: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
9525: 'REM_BR';
9526:
9527: --
9528: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9524: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
9525: 'REM_BR';
9526:
9527: --
9528: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9529: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9530: --
9531: -- bulk performance
9532: --
9525: 'REM_BR';
9526:
9527: --
9528: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9529: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9530: --
9531: -- bulk performance
9532: --
9533: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9529: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9530: --
9531: -- bulk performance
9532: --
9533: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9534:
9535: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9536: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9537:
9531: -- bulk performance
9532: --
9533: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9534:
9535: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9536: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9537:
9538: -- 4955764
9539: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9535: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9536: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9537:
9538: -- 4955764
9539: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9540: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
9541:
9542: -- 4458381 Public Sector Enh
9543:
9569: l_rec_acct_attrs.array_num_value(10) := p_source_42;
9570: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
9571: l_rec_acct_attrs.array_char_value(11) := p_source_39;
9572:
9573: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9574: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9575:
9576: ---------------------------------------------------------------------------------------------------------------
9577: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9570: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
9571: l_rec_acct_attrs.array_char_value(11) := p_source_39;
9572:
9573: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9574: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9575:
9576: ---------------------------------------------------------------------------------------------------------------
9577: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9578: ---------------------------------------------------------------------------------------------------------------
9573: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9574: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9575:
9576: ---------------------------------------------------------------------------------------------------------------
9577: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9578: ---------------------------------------------------------------------------------------------------------------
9579: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9580:
9581: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9575:
9576: ---------------------------------------------------------------------------------------------------------------
9577: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9578: ---------------------------------------------------------------------------------------------------------------
9579: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9580:
9581: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9582: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9583:
9577: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9578: ---------------------------------------------------------------------------------------------------------------
9579: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9580:
9581: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9582: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9583:
9584: IF xla_accounting_cache_pkg.GetValueChar
9585: (p_source_code => 'LEDGER_CATEGORY_CODE'
9578: ---------------------------------------------------------------------------------------------------------------
9579: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9580:
9581: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9582: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9583:
9584: IF xla_accounting_cache_pkg.GetValueChar
9585: (p_source_code => 'LEDGER_CATEGORY_CODE'
9586: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
9589: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
9590: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
9591: )
9592: THEN
9593: xla_ae_lines_pkg.BflowUpgEntry
9594: (p_business_method_code => l_bflow_method_code
9595: ,p_business_class_code => l_bflow_class_code
9596: ,p_balance_type => l_balance_type_code);
9597: ELSE
9629: , x_value_type_code => l_adr_value_type_code
9630: , p_side => 'NA'
9631: );
9632:
9633: xla_ae_lines_pkg.set_ccid(
9634: p_code_combination_id => l_ccid
9635: , p_value_type_code => l_adr_value_type_code
9636: , p_transaction_coa_id => l_adr_transaction_coa_id
9637: , p_accounting_coa_id => l_adr_accounting_coa_id
9665: xla_accounting_err_pkg.build_message
9666: (p_appli_s_name => 'XLA'
9667: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
9668: ,p_token_1 => 'LINE_NUMBER'
9669: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
9670: ,p_token_2 => 'LINE_TYPE_NAME'
9671: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
9672: l_component_type
9673: ,l_component_code
9701: --
9702: --
9703: ------------------------------------------------------------------------------------------------
9704: -- 4219869 Business Flow
9705: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
9706: -- Prior Entry. Currently, the following code is always generated.
9707: ------------------------------------------------------------------------------------------------
9708: XLA_AE_LINES_PKG.ValidateCurrentLine;
9709:
9704: -- 4219869 Business Flow
9705: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
9706: -- Prior Entry. Currently, the following code is always generated.
9707: ------------------------------------------------------------------------------------------------
9708: XLA_AE_LINES_PKG.ValidateCurrentLine;
9709:
9710: ------------------------------------------------------------------------------------
9711: -- 4219869 Business Flow
9712: -- Populated credit and debit amounts -- Need to generate this within IF
9710: ------------------------------------------------------------------------------------
9711: -- 4219869 Business Flow
9712: -- Populated credit and debit amounts -- Need to generate this within IF
9713: ------------------------------------------------------------------------------------
9714: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9715:
9716: ----------------------------------------------------------------------------------
9717: -- 4219869 Business Flow
9718: -- Update journal entry status -- Need to generate this within IF
9742: -- To allow MPA report to determine if it should generate report process
9743: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
9744: ------------------------------------------------------------------------------------------
9745:
9746: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
9747: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
9748: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
9749: -- call ADRs
9750: -- Bug 4922099
9743: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
9744: ------------------------------------------------------------------------------------------
9745:
9746: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
9747: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
9748: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
9749: -- call ADRs
9750: -- Bug 4922099
9751: --
9767: , x_value_type_code => l_adr_value_type_code
9768: , p_side => 'NA'
9769: );
9770:
9771: xla_ae_lines_pkg.set_ccid(
9772: p_code_combination_id => l_ccid
9773: , p_value_type_code => l_adr_value_type_code
9774: , p_transaction_coa_id => l_adr_transaction_coa_id
9775: , p_accounting_coa_id => l_adr_accounting_coa_id
9790:
9791: --
9792: -- Update the line information that should be overwritten
9793: --
9794: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9795: p_header_num => 1);
9796: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9797:
9798: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9792: -- Update the line information that should be overwritten
9793: --
9794: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9795: p_header_num => 1);
9796: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9797:
9798: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9799:
9800: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9794: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9795: p_header_num => 1);
9796: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9797:
9798: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9799:
9800: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9801: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
9802: END IF;
9797:
9798: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9799:
9800: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9801: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
9802: END IF;
9803:
9804: --
9805: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
9804: --
9805: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
9806: --
9807: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
9808: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
9809: ELSE
9810: ---------------------------------------------------------------------------------------------------
9811: -- 4262811a Switch Sign
9812: ---------------------------------------------------------------------------------------------------
9809: ELSE
9810: ---------------------------------------------------------------------------------------------------
9811: -- 4262811a Switch Sign
9812: ---------------------------------------------------------------------------------------------------
9813: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9814: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9815: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9810: ---------------------------------------------------------------------------------------------------
9811: -- 4262811a Switch Sign
9812: ---------------------------------------------------------------------------------------------------
9813: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9814: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9815: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9818: -- 5132302
9811: -- 4262811a Switch Sign
9812: ---------------------------------------------------------------------------------------------------
9813: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9814: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9815: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9818: -- 5132302
9819: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9812: ---------------------------------------------------------------------------------------------------
9813: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9814: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9815: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9818: -- 5132302
9819: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9820: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9813: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9814: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9815: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9818: -- 5132302
9819: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9820: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9821:
9815: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9818: -- 5132302
9819: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9820: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9821:
9822: END IF;
9823:
9816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9818: -- 5132302
9819: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9820: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9821:
9822: END IF;
9823:
9824: -- 4955764
9821:
9822: END IF;
9823:
9824: -- 4955764
9825: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9826: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9827:
9828:
9829: XLA_AE_LINES_PKG.ValidateCurrentLine;
9825: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9826: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9827:
9828:
9829: XLA_AE_LINES_PKG.ValidateCurrentLine;
9830: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9831:
9832: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
9833: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
9826: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9827:
9828:
9829: XLA_AE_LINES_PKG.ValidateCurrentLine;
9830: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9831:
9832: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
9833: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
9834: ,p_balance_type_code => l_balance_type_code);
9965: --
9966: -- bulk performance
9967: --
9968: l_balance_type_code VARCHAR2(1);
9969: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
9970: l_log_module VARCHAR2(240);
9971:
9972: --
9973: -- Upgrade strategy
10033: ') = 'TAX'
10034: THEN
10035:
10036: --
10037: XLA_AE_LINES_PKG.SetNewLine;
10038:
10039: p_balance_type_code := l_balance_type_code;
10040: -- set the flag so later we will know whether the gain loss line needs to be created
10041:
10045:
10046: --
10047: -- bulk performance
10048: --
10049: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
10050: p_header_num => 0); -- 4262811
10051: --
10052: -- set accounting line options
10053: --
10050: p_header_num => 0); -- 4262811
10051: --
10052: -- set accounting line options
10053: --
10054: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
10055: p_natural_side_code => 'C'
10056: , p_gain_or_loss_flag => 'N'
10057: , p_gl_transfer_mode_code => 'S'
10058: , p_acct_entry_type_code => 'A'
10064: --
10065: --
10066: -- set accounting line type info
10067: --
10068: xla_ae_lines_pkg.SetAcctLineType
10069: (p_component_type => l_component_type
10070: ,p_event_type_code => l_event_type_code
10071: ,p_line_definition_owner_code => l_line_definition_owner_code
10072: ,p_line_definition_code => l_line_definition_code
10078: ,p_event_class_code => l_event_class_code);
10079: --
10080: -- set accounting class
10081: --
10082: xla_ae_lines_pkg.SetAcctClass(
10083: p_accounting_class_code => 'TAX'
10084: , p_ae_header_id => l_ae_header_id
10085: );
10086:
10086:
10087: --
10088: -- set rounding class
10089: --
10090: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
10091: 'TAX';
10092:
10093: --
10094: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
10090: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
10091: 'TAX';
10092:
10093: --
10094: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
10095: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
10096: --
10097: -- bulk performance
10098: --
10091: 'TAX';
10092:
10093: --
10094: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
10095: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
10096: --
10097: -- bulk performance
10098: --
10099: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
10095: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
10096: --
10097: -- bulk performance
10098: --
10099: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
10100:
10101: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
10102: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
10103:
10097: -- bulk performance
10098: --
10099: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
10100:
10101: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
10102: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
10103:
10104: -- 4955764
10105: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10101: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
10102: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
10103:
10104: -- 4955764
10105: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10106: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
10107:
10108: -- 4458381 Public Sector Enh
10109:
10135: l_rec_acct_attrs.array_num_value(10) := p_source_42;
10136: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
10137: l_rec_acct_attrs.array_char_value(11) := p_source_39;
10138:
10139: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
10140: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
10141:
10142: ---------------------------------------------------------------------------------------------------------------
10143: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10136: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
10137: l_rec_acct_attrs.array_char_value(11) := p_source_39;
10138:
10139: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
10140: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
10141:
10142: ---------------------------------------------------------------------------------------------------------------
10143: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10144: ---------------------------------------------------------------------------------------------------------------
10139: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
10140: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
10141:
10142: ---------------------------------------------------------------------------------------------------------------
10143: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10144: ---------------------------------------------------------------------------------------------------------------
10145: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10146:
10147: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10141:
10142: ---------------------------------------------------------------------------------------------------------------
10143: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10144: ---------------------------------------------------------------------------------------------------------------
10145: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10146:
10147: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10148: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10149:
10143: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10144: ---------------------------------------------------------------------------------------------------------------
10145: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10146:
10147: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10148: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10149:
10150: IF xla_accounting_cache_pkg.GetValueChar
10151: (p_source_code => 'LEDGER_CATEGORY_CODE'
10144: ---------------------------------------------------------------------------------------------------------------
10145: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10146:
10147: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10148: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10149:
10150: IF xla_accounting_cache_pkg.GetValueChar
10151: (p_source_code => 'LEDGER_CATEGORY_CODE'
10152: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
10155: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
10156: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
10157: )
10158: THEN
10159: xla_ae_lines_pkg.BflowUpgEntry
10160: (p_business_method_code => l_bflow_method_code
10161: ,p_business_class_code => l_bflow_class_code
10162: ,p_balance_type => l_balance_type_code);
10163: ELSE
10195: , x_value_type_code => l_adr_value_type_code
10196: , p_side => 'NA'
10197: );
10198:
10199: xla_ae_lines_pkg.set_ccid(
10200: p_code_combination_id => l_ccid
10201: , p_value_type_code => l_adr_value_type_code
10202: , p_transaction_coa_id => l_adr_transaction_coa_id
10203: , p_accounting_coa_id => l_adr_accounting_coa_id
10231: xla_accounting_err_pkg.build_message
10232: (p_appli_s_name => 'XLA'
10233: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
10234: ,p_token_1 => 'LINE_NUMBER'
10235: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
10236: ,p_token_2 => 'LINE_TYPE_NAME'
10237: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
10238: l_component_type
10239: ,l_component_code
10267: --
10268: --
10269: ------------------------------------------------------------------------------------------------
10270: -- 4219869 Business Flow
10271: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
10272: -- Prior Entry. Currently, the following code is always generated.
10273: ------------------------------------------------------------------------------------------------
10274: XLA_AE_LINES_PKG.ValidateCurrentLine;
10275:
10270: -- 4219869 Business Flow
10271: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
10272: -- Prior Entry. Currently, the following code is always generated.
10273: ------------------------------------------------------------------------------------------------
10274: XLA_AE_LINES_PKG.ValidateCurrentLine;
10275:
10276: ------------------------------------------------------------------------------------
10277: -- 4219869 Business Flow
10278: -- Populated credit and debit amounts -- Need to generate this within IF
10276: ------------------------------------------------------------------------------------
10277: -- 4219869 Business Flow
10278: -- Populated credit and debit amounts -- Need to generate this within IF
10279: ------------------------------------------------------------------------------------
10280: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10281:
10282: ----------------------------------------------------------------------------------
10283: -- 4219869 Business Flow
10284: -- Update journal entry status -- Need to generate this within IF
10308: -- To allow MPA report to determine if it should generate report process
10309: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
10310: ------------------------------------------------------------------------------------------
10311:
10312: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
10313: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
10314: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
10315: -- call ADRs
10316: -- Bug 4922099
10309: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
10310: ------------------------------------------------------------------------------------------
10311:
10312: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
10313: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
10314: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
10315: -- call ADRs
10316: -- Bug 4922099
10317: --
10333: , x_value_type_code => l_adr_value_type_code
10334: , p_side => 'NA'
10335: );
10336:
10337: xla_ae_lines_pkg.set_ccid(
10338: p_code_combination_id => l_ccid
10339: , p_value_type_code => l_adr_value_type_code
10340: , p_transaction_coa_id => l_adr_transaction_coa_id
10341: , p_accounting_coa_id => l_adr_accounting_coa_id
10356:
10357: --
10358: -- Update the line information that should be overwritten
10359: --
10360: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10361: p_header_num => 1);
10362: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10363:
10364: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10358: -- Update the line information that should be overwritten
10359: --
10360: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10361: p_header_num => 1);
10362: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10363:
10364: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10365:
10366: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10360: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10361: p_header_num => 1);
10362: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10363:
10364: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10365:
10366: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10367: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
10368: END IF;
10363:
10364: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10365:
10366: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10367: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
10368: END IF;
10369:
10370: --
10371: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
10370: --
10371: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
10372: --
10373: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
10374: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
10375: ELSE
10376: ---------------------------------------------------------------------------------------------------
10377: -- 4262811a Switch Sign
10378: ---------------------------------------------------------------------------------------------------
10375: ELSE
10376: ---------------------------------------------------------------------------------------------------
10377: -- 4262811a Switch Sign
10378: ---------------------------------------------------------------------------------------------------
10379: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10380: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10381: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10382: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10383: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10376: ---------------------------------------------------------------------------------------------------
10377: -- 4262811a Switch Sign
10378: ---------------------------------------------------------------------------------------------------
10379: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10380: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10381: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10382: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10383: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10384: -- 5132302
10377: -- 4262811a Switch Sign
10378: ---------------------------------------------------------------------------------------------------
10379: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10380: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10381: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10382: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10383: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10384: -- 5132302
10385: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10378: ---------------------------------------------------------------------------------------------------
10379: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10380: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10381: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10382: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10383: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10384: -- 5132302
10385: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10386: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10379: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10380: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10381: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10382: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10383: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10384: -- 5132302
10385: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10386: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10387:
10381: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10382: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10383: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10384: -- 5132302
10385: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10386: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10387:
10388: END IF;
10389:
10382: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10383: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10384: -- 5132302
10385: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10386: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10387:
10388: END IF;
10389:
10390: -- 4955764
10387:
10388: END IF;
10389:
10390: -- 4955764
10391: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10392: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10393:
10394:
10395: XLA_AE_LINES_PKG.ValidateCurrentLine;
10391: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10392: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10393:
10394:
10395: XLA_AE_LINES_PKG.ValidateCurrentLine;
10396: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10397:
10398: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
10399: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
10392: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10393:
10394:
10395: XLA_AE_LINES_PKG.ValidateCurrentLine;
10396: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10397:
10398: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
10399: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
10400: ,p_balance_type_code => l_balance_type_code);
10531: --
10532: -- bulk performance
10533: --
10534: l_balance_type_code VARCHAR2(1);
10535: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
10536: l_log_module VARCHAR2(240);
10537:
10538: --
10539: -- Upgrade strategy
10599: ') = 'UNPAIDREC'
10600: THEN
10601:
10602: --
10603: XLA_AE_LINES_PKG.SetNewLine;
10604:
10605: p_balance_type_code := l_balance_type_code;
10606: -- set the flag so later we will know whether the gain loss line needs to be created
10607:
10611:
10612: --
10613: -- bulk performance
10614: --
10615: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
10616: p_header_num => 0); -- 4262811
10617: --
10618: -- set accounting line options
10619: --
10616: p_header_num => 0); -- 4262811
10617: --
10618: -- set accounting line options
10619: --
10620: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
10621: p_natural_side_code => 'C'
10622: , p_gain_or_loss_flag => 'N'
10623: , p_gl_transfer_mode_code => 'S'
10624: , p_acct_entry_type_code => 'A'
10630: --
10631: --
10632: -- set accounting line type info
10633: --
10634: xla_ae_lines_pkg.SetAcctLineType
10635: (p_component_type => l_component_type
10636: ,p_event_type_code => l_event_type_code
10637: ,p_line_definition_owner_code => l_line_definition_owner_code
10638: ,p_line_definition_code => l_line_definition_code
10644: ,p_event_class_code => l_event_class_code);
10645: --
10646: -- set accounting class
10647: --
10648: xla_ae_lines_pkg.SetAcctClass(
10649: p_accounting_class_code => 'UNPAID_BR'
10650: , p_ae_header_id => l_ae_header_id
10651: );
10652:
10652:
10653: --
10654: -- set rounding class
10655: --
10656: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
10657: 'UNPAID_BR';
10658:
10659: --
10660: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
10656: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
10657: 'UNPAID_BR';
10658:
10659: --
10660: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
10661: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
10662: --
10663: -- bulk performance
10664: --
10657: 'UNPAID_BR';
10658:
10659: --
10660: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
10661: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
10662: --
10663: -- bulk performance
10664: --
10665: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
10661: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
10662: --
10663: -- bulk performance
10664: --
10665: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
10666:
10667: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
10668: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
10669:
10663: -- bulk performance
10664: --
10665: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
10666:
10667: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
10668: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
10669:
10670: -- 4955764
10671: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10667: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
10668: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
10669:
10670: -- 4955764
10671: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10672: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
10673:
10674: -- 4458381 Public Sector Enh
10675:
10701: l_rec_acct_attrs.array_num_value(10) := p_source_42;
10702: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
10703: l_rec_acct_attrs.array_char_value(11) := p_source_39;
10704:
10705: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
10706: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
10707:
10708: ---------------------------------------------------------------------------------------------------------------
10709: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10702: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
10703: l_rec_acct_attrs.array_char_value(11) := p_source_39;
10704:
10705: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
10706: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
10707:
10708: ---------------------------------------------------------------------------------------------------------------
10709: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10710: ---------------------------------------------------------------------------------------------------------------
10705: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
10706: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
10707:
10708: ---------------------------------------------------------------------------------------------------------------
10709: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10710: ---------------------------------------------------------------------------------------------------------------
10711: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10712:
10713: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10707:
10708: ---------------------------------------------------------------------------------------------------------------
10709: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10710: ---------------------------------------------------------------------------------------------------------------
10711: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10712:
10713: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10714: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10715:
10709: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10710: ---------------------------------------------------------------------------------------------------------------
10711: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10712:
10713: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10714: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10715:
10716: IF xla_accounting_cache_pkg.GetValueChar
10717: (p_source_code => 'LEDGER_CATEGORY_CODE'
10710: ---------------------------------------------------------------------------------------------------------------
10711: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10712:
10713: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10714: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10715:
10716: IF xla_accounting_cache_pkg.GetValueChar
10717: (p_source_code => 'LEDGER_CATEGORY_CODE'
10718: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
10721: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
10722: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
10723: )
10724: THEN
10725: xla_ae_lines_pkg.BflowUpgEntry
10726: (p_business_method_code => l_bflow_method_code
10727: ,p_business_class_code => l_bflow_class_code
10728: ,p_balance_type => l_balance_type_code);
10729: ELSE
10761: , x_value_type_code => l_adr_value_type_code
10762: , p_side => 'NA'
10763: );
10764:
10765: xla_ae_lines_pkg.set_ccid(
10766: p_code_combination_id => l_ccid
10767: , p_value_type_code => l_adr_value_type_code
10768: , p_transaction_coa_id => l_adr_transaction_coa_id
10769: , p_accounting_coa_id => l_adr_accounting_coa_id
10797: xla_accounting_err_pkg.build_message
10798: (p_appli_s_name => 'XLA'
10799: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
10800: ,p_token_1 => 'LINE_NUMBER'
10801: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
10802: ,p_token_2 => 'LINE_TYPE_NAME'
10803: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
10804: l_component_type
10805: ,l_component_code
10833: --
10834: --
10835: ------------------------------------------------------------------------------------------------
10836: -- 4219869 Business Flow
10837: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
10838: -- Prior Entry. Currently, the following code is always generated.
10839: ------------------------------------------------------------------------------------------------
10840: XLA_AE_LINES_PKG.ValidateCurrentLine;
10841:
10836: -- 4219869 Business Flow
10837: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
10838: -- Prior Entry. Currently, the following code is always generated.
10839: ------------------------------------------------------------------------------------------------
10840: XLA_AE_LINES_PKG.ValidateCurrentLine;
10841:
10842: ------------------------------------------------------------------------------------
10843: -- 4219869 Business Flow
10844: -- Populated credit and debit amounts -- Need to generate this within IF
10842: ------------------------------------------------------------------------------------
10843: -- 4219869 Business Flow
10844: -- Populated credit and debit amounts -- Need to generate this within IF
10845: ------------------------------------------------------------------------------------
10846: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10847:
10848: ----------------------------------------------------------------------------------
10849: -- 4219869 Business Flow
10850: -- Update journal entry status -- Need to generate this within IF
10874: -- To allow MPA report to determine if it should generate report process
10875: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
10876: ------------------------------------------------------------------------------------------
10877:
10878: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
10879: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
10880: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
10881: -- call ADRs
10882: -- Bug 4922099
10875: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
10876: ------------------------------------------------------------------------------------------
10877:
10878: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
10879: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
10880: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
10881: -- call ADRs
10882: -- Bug 4922099
10883: --
10899: , x_value_type_code => l_adr_value_type_code
10900: , p_side => 'NA'
10901: );
10902:
10903: xla_ae_lines_pkg.set_ccid(
10904: p_code_combination_id => l_ccid
10905: , p_value_type_code => l_adr_value_type_code
10906: , p_transaction_coa_id => l_adr_transaction_coa_id
10907: , p_accounting_coa_id => l_adr_accounting_coa_id
10922:
10923: --
10924: -- Update the line information that should be overwritten
10925: --
10926: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10927: p_header_num => 1);
10928: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10929:
10930: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10924: -- Update the line information that should be overwritten
10925: --
10926: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10927: p_header_num => 1);
10928: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10929:
10930: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10931:
10932: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10926: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10927: p_header_num => 1);
10928: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10929:
10930: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10931:
10932: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10933: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
10934: END IF;
10929:
10930: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10931:
10932: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10933: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
10934: END IF;
10935:
10936: --
10937: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
10936: --
10937: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
10938: --
10939: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
10940: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
10941: ELSE
10942: ---------------------------------------------------------------------------------------------------
10943: -- 4262811a Switch Sign
10944: ---------------------------------------------------------------------------------------------------
10941: ELSE
10942: ---------------------------------------------------------------------------------------------------
10943: -- 4262811a Switch Sign
10944: ---------------------------------------------------------------------------------------------------
10945: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10946: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10947: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10948: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10949: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10942: ---------------------------------------------------------------------------------------------------
10943: -- 4262811a Switch Sign
10944: ---------------------------------------------------------------------------------------------------
10945: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10946: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10947: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10948: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10949: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10950: -- 5132302
10943: -- 4262811a Switch Sign
10944: ---------------------------------------------------------------------------------------------------
10945: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10946: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10947: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10948: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10949: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10950: -- 5132302
10951: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10944: ---------------------------------------------------------------------------------------------------
10945: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10946: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10947: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10948: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10949: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10950: -- 5132302
10951: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10952: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10945: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10946: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10947: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10948: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10949: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10950: -- 5132302
10951: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10952: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10953:
10947: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10948: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10949: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10950: -- 5132302
10951: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10952: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10953:
10954: END IF;
10955:
10948: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10949: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10950: -- 5132302
10951: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10952: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10953:
10954: END IF;
10955:
10956: -- 4955764
10953:
10954: END IF;
10955:
10956: -- 4955764
10957: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10958: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10959:
10960:
10961: XLA_AE_LINES_PKG.ValidateCurrentLine;
10957: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10958: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10959:
10960:
10961: XLA_AE_LINES_PKG.ValidateCurrentLine;
10962: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10963:
10964: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
10965: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
10958: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10959:
10960:
10961: XLA_AE_LINES_PKG.ValidateCurrentLine;
10962: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10963:
10964: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
10965: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
10966: ,p_balance_type_code => l_balance_type_code);
11097: --
11098: -- bulk performance
11099: --
11100: l_balance_type_code VARCHAR2(1);
11101: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
11102: l_log_module VARCHAR2(240);
11103:
11104: --
11105: -- Upgrade strategy
11165: ') = 'REC'
11166: THEN
11167:
11168: --
11169: XLA_AE_LINES_PKG.SetNewLine;
11170:
11171: p_balance_type_code := l_balance_type_code;
11172: -- set the flag so later we will know whether the gain loss line needs to be created
11173:
11177:
11178: --
11179: -- bulk performance
11180: --
11181: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
11182: p_header_num => 0); -- 4262811
11183: --
11184: -- set accounting line options
11185: --
11182: p_header_num => 0); -- 4262811
11183: --
11184: -- set accounting line options
11185: --
11186: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
11187: p_natural_side_code => 'D'
11188: , p_gain_or_loss_flag => 'N'
11189: , p_gl_transfer_mode_code => 'S'
11190: , p_acct_entry_type_code => 'A'
11196: --
11197: --
11198: -- set accounting line type info
11199: --
11200: xla_ae_lines_pkg.SetAcctLineType
11201: (p_component_type => l_component_type
11202: ,p_event_type_code => l_event_type_code
11203: ,p_line_definition_owner_code => l_line_definition_owner_code
11204: ,p_line_definition_code => l_line_definition_code
11210: ,p_event_class_code => l_event_class_code);
11211: --
11212: -- set accounting class
11213: --
11214: xla_ae_lines_pkg.SetAcctClass(
11215: p_accounting_class_code => 'RECEIVABLE'
11216: , p_ae_header_id => l_ae_header_id
11217: );
11218:
11218:
11219: --
11220: -- set rounding class
11221: --
11222: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
11223: 'RECEIVABLE';
11224:
11225: --
11226: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11222: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
11223: 'RECEIVABLE';
11224:
11225: --
11226: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11227: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11228: --
11229: -- bulk performance
11230: --
11223: 'RECEIVABLE';
11224:
11225: --
11226: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11227: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11228: --
11229: -- bulk performance
11230: --
11231: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11227: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11228: --
11229: -- bulk performance
11230: --
11231: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11232:
11233: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11234: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11235:
11229: -- bulk performance
11230: --
11231: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11232:
11233: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11234: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11235:
11236: -- 4955764
11237: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11233: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11234: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11235:
11236: -- 4955764
11237: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11238: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
11239:
11240: -- 4458381 Public Sector Enh
11241:
11267: l_rec_acct_attrs.array_num_value(10) := p_source_38;
11268: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
11269: l_rec_acct_attrs.array_char_value(11) := p_source_39;
11270:
11271: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11272: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11273:
11274: ---------------------------------------------------------------------------------------------------------------
11275: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11268: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
11269: l_rec_acct_attrs.array_char_value(11) := p_source_39;
11270:
11271: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11272: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11273:
11274: ---------------------------------------------------------------------------------------------------------------
11275: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11276: ---------------------------------------------------------------------------------------------------------------
11271: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11272: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11273:
11274: ---------------------------------------------------------------------------------------------------------------
11275: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11276: ---------------------------------------------------------------------------------------------------------------
11277: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11278:
11279: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11273:
11274: ---------------------------------------------------------------------------------------------------------------
11275: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11276: ---------------------------------------------------------------------------------------------------------------
11277: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11278:
11279: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11280: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11281:
11275: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11276: ---------------------------------------------------------------------------------------------------------------
11277: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11278:
11279: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11280: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11281:
11282: IF xla_accounting_cache_pkg.GetValueChar
11283: (p_source_code => 'LEDGER_CATEGORY_CODE'
11276: ---------------------------------------------------------------------------------------------------------------
11277: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11278:
11279: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11280: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11281:
11282: IF xla_accounting_cache_pkg.GetValueChar
11283: (p_source_code => 'LEDGER_CATEGORY_CODE'
11284: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
11287: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
11288: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
11289: )
11290: THEN
11291: xla_ae_lines_pkg.BflowUpgEntry
11292: (p_business_method_code => l_bflow_method_code
11293: ,p_business_class_code => l_bflow_class_code
11294: ,p_balance_type => l_balance_type_code);
11295: ELSE
11327: , x_value_type_code => l_adr_value_type_code
11328: , p_side => 'NA'
11329: );
11330:
11331: xla_ae_lines_pkg.set_ccid(
11332: p_code_combination_id => l_ccid
11333: , p_value_type_code => l_adr_value_type_code
11334: , p_transaction_coa_id => l_adr_transaction_coa_id
11335: , p_accounting_coa_id => l_adr_accounting_coa_id
11363: xla_accounting_err_pkg.build_message
11364: (p_appli_s_name => 'XLA'
11365: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
11366: ,p_token_1 => 'LINE_NUMBER'
11367: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
11368: ,p_token_2 => 'LINE_TYPE_NAME'
11369: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
11370: l_component_type
11371: ,l_component_code
11399: --
11400: --
11401: ------------------------------------------------------------------------------------------------
11402: -- 4219869 Business Flow
11403: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
11404: -- Prior Entry. Currently, the following code is always generated.
11405: ------------------------------------------------------------------------------------------------
11406: XLA_AE_LINES_PKG.ValidateCurrentLine;
11407:
11402: -- 4219869 Business Flow
11403: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
11404: -- Prior Entry. Currently, the following code is always generated.
11405: ------------------------------------------------------------------------------------------------
11406: XLA_AE_LINES_PKG.ValidateCurrentLine;
11407:
11408: ------------------------------------------------------------------------------------
11409: -- 4219869 Business Flow
11410: -- Populated credit and debit amounts -- Need to generate this within IF
11408: ------------------------------------------------------------------------------------
11409: -- 4219869 Business Flow
11410: -- Populated credit and debit amounts -- Need to generate this within IF
11411: ------------------------------------------------------------------------------------
11412: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11413:
11414: ----------------------------------------------------------------------------------
11415: -- 4219869 Business Flow
11416: -- Update journal entry status -- Need to generate this within IF
11440: -- To allow MPA report to determine if it should generate report process
11441: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
11442: ------------------------------------------------------------------------------------------
11443:
11444: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
11445: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
11446: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
11447: -- call ADRs
11448: -- Bug 4922099
11441: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
11442: ------------------------------------------------------------------------------------------
11443:
11444: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
11445: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
11446: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
11447: -- call ADRs
11448: -- Bug 4922099
11449: --
11465: , x_value_type_code => l_adr_value_type_code
11466: , p_side => 'NA'
11467: );
11468:
11469: xla_ae_lines_pkg.set_ccid(
11470: p_code_combination_id => l_ccid
11471: , p_value_type_code => l_adr_value_type_code
11472: , p_transaction_coa_id => l_adr_transaction_coa_id
11473: , p_accounting_coa_id => l_adr_accounting_coa_id
11488:
11489: --
11490: -- Update the line information that should be overwritten
11491: --
11492: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11493: p_header_num => 1);
11494: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11495:
11496: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11490: -- Update the line information that should be overwritten
11491: --
11492: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11493: p_header_num => 1);
11494: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11495:
11496: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11497:
11498: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11492: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11493: p_header_num => 1);
11494: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11495:
11496: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11497:
11498: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11499: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
11500: END IF;
11495:
11496: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11497:
11498: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11499: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
11500: END IF;
11501:
11502: --
11503: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
11502: --
11503: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
11504: --
11505: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
11506: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
11507: ELSE
11508: ---------------------------------------------------------------------------------------------------
11509: -- 4262811a Switch Sign
11510: ---------------------------------------------------------------------------------------------------
11507: ELSE
11508: ---------------------------------------------------------------------------------------------------
11509: -- 4262811a Switch Sign
11510: ---------------------------------------------------------------------------------------------------
11511: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11512: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11513: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11514: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11515: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11508: ---------------------------------------------------------------------------------------------------
11509: -- 4262811a Switch Sign
11510: ---------------------------------------------------------------------------------------------------
11511: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11512: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11513: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11514: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11515: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11516: -- 5132302
11509: -- 4262811a Switch Sign
11510: ---------------------------------------------------------------------------------------------------
11511: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11512: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11513: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11514: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11515: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11516: -- 5132302
11517: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11510: ---------------------------------------------------------------------------------------------------
11511: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11512: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11513: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11514: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11515: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11516: -- 5132302
11517: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11518: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11511: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11512: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11513: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11514: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11515: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11516: -- 5132302
11517: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11518: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11519:
11513: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11514: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11515: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11516: -- 5132302
11517: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11518: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11519:
11520: END IF;
11521:
11514: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11515: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11516: -- 5132302
11517: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11518: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11519:
11520: END IF;
11521:
11522: -- 4955764
11519:
11520: END IF;
11521:
11522: -- 4955764
11523: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11524: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11525:
11526:
11527: XLA_AE_LINES_PKG.ValidateCurrentLine;
11523: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11524: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11525:
11526:
11527: XLA_AE_LINES_PKG.ValidateCurrentLine;
11528: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11529:
11530: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
11531: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
11524: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11525:
11526:
11527: XLA_AE_LINES_PKG.ValidateCurrentLine;
11528: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11529:
11530: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
11531: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
11532: ,p_balance_type_code => l_balance_type_code);
11663: --
11664: -- bulk performance
11665: --
11666: l_balance_type_code VARCHAR2(1);
11667: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
11668: l_log_module VARCHAR2(240);
11669:
11670: --
11671: -- Upgrade strategy
11731: ') = 'REV'
11732: THEN
11733:
11734: --
11735: XLA_AE_LINES_PKG.SetNewLine;
11736:
11737: p_balance_type_code := l_balance_type_code;
11738: -- set the flag so later we will know whether the gain loss line needs to be created
11739:
11743:
11744: --
11745: -- bulk performance
11746: --
11747: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
11748: p_header_num => 0); -- 4262811
11749: --
11750: -- set accounting line options
11751: --
11748: p_header_num => 0); -- 4262811
11749: --
11750: -- set accounting line options
11751: --
11752: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
11753: p_natural_side_code => 'C'
11754: , p_gain_or_loss_flag => 'N'
11755: , p_gl_transfer_mode_code => 'S'
11756: , p_acct_entry_type_code => 'A'
11762: --
11763: --
11764: -- set accounting line type info
11765: --
11766: xla_ae_lines_pkg.SetAcctLineType
11767: (p_component_type => l_component_type
11768: ,p_event_type_code => l_event_type_code
11769: ,p_line_definition_owner_code => l_line_definition_owner_code
11770: ,p_line_definition_code => l_line_definition_code
11776: ,p_event_class_code => l_event_class_code);
11777: --
11778: -- set accounting class
11779: --
11780: xla_ae_lines_pkg.SetAcctClass(
11781: p_accounting_class_code => 'REVENUE'
11782: , p_ae_header_id => l_ae_header_id
11783: );
11784:
11784:
11785: --
11786: -- set rounding class
11787: --
11788: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
11789: 'RECEIVABLE';
11790:
11791: --
11792: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11788: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
11789: 'RECEIVABLE';
11790:
11791: --
11792: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11793: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11794: --
11795: -- bulk performance
11796: --
11789: 'RECEIVABLE';
11790:
11791: --
11792: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11793: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11794: --
11795: -- bulk performance
11796: --
11797: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11793: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11794: --
11795: -- bulk performance
11796: --
11797: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11798:
11799: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11800: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11801:
11795: -- bulk performance
11796: --
11797: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11798:
11799: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11800: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11801:
11802: -- 4955764
11803: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11799: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11800: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11801:
11802: -- 4955764
11803: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11804: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
11805:
11806: -- 4458381 Public Sector Enh
11807:
11833: l_rec_acct_attrs.array_num_value(10) := p_source_38;
11834: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
11835: l_rec_acct_attrs.array_char_value(11) := p_source_39;
11836:
11837: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11838: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11839:
11840: ---------------------------------------------------------------------------------------------------------------
11841: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11834: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
11835: l_rec_acct_attrs.array_char_value(11) := p_source_39;
11836:
11837: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11838: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11839:
11840: ---------------------------------------------------------------------------------------------------------------
11841: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11842: ---------------------------------------------------------------------------------------------------------------
11837: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11838: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11839:
11840: ---------------------------------------------------------------------------------------------------------------
11841: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11842: ---------------------------------------------------------------------------------------------------------------
11843: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11844:
11845: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11839:
11840: ---------------------------------------------------------------------------------------------------------------
11841: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11842: ---------------------------------------------------------------------------------------------------------------
11843: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11844:
11845: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11846: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11847:
11841: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11842: ---------------------------------------------------------------------------------------------------------------
11843: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11844:
11845: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11846: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11847:
11848: IF xla_accounting_cache_pkg.GetValueChar
11849: (p_source_code => 'LEDGER_CATEGORY_CODE'
11842: ---------------------------------------------------------------------------------------------------------------
11843: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11844:
11845: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11846: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11847:
11848: IF xla_accounting_cache_pkg.GetValueChar
11849: (p_source_code => 'LEDGER_CATEGORY_CODE'
11850: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
11853: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
11854: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
11855: )
11856: THEN
11857: xla_ae_lines_pkg.BflowUpgEntry
11858: (p_business_method_code => l_bflow_method_code
11859: ,p_business_class_code => l_bflow_class_code
11860: ,p_balance_type => l_balance_type_code);
11861: ELSE
11893: , x_value_type_code => l_adr_value_type_code
11894: , p_side => 'NA'
11895: );
11896:
11897: xla_ae_lines_pkg.set_ccid(
11898: p_code_combination_id => l_ccid
11899: , p_value_type_code => l_adr_value_type_code
11900: , p_transaction_coa_id => l_adr_transaction_coa_id
11901: , p_accounting_coa_id => l_adr_accounting_coa_id
11929: xla_accounting_err_pkg.build_message
11930: (p_appli_s_name => 'XLA'
11931: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
11932: ,p_token_1 => 'LINE_NUMBER'
11933: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
11934: ,p_token_2 => 'LINE_TYPE_NAME'
11935: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
11936: l_component_type
11937: ,l_component_code
11965: --
11966: --
11967: ------------------------------------------------------------------------------------------------
11968: -- 4219869 Business Flow
11969: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
11970: -- Prior Entry. Currently, the following code is always generated.
11971: ------------------------------------------------------------------------------------------------
11972: XLA_AE_LINES_PKG.ValidateCurrentLine;
11973:
11968: -- 4219869 Business Flow
11969: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
11970: -- Prior Entry. Currently, the following code is always generated.
11971: ------------------------------------------------------------------------------------------------
11972: XLA_AE_LINES_PKG.ValidateCurrentLine;
11973:
11974: ------------------------------------------------------------------------------------
11975: -- 4219869 Business Flow
11976: -- Populated credit and debit amounts -- Need to generate this within IF
11974: ------------------------------------------------------------------------------------
11975: -- 4219869 Business Flow
11976: -- Populated credit and debit amounts -- Need to generate this within IF
11977: ------------------------------------------------------------------------------------
11978: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11979:
11980: ----------------------------------------------------------------------------------
11981: -- 4219869 Business Flow
11982: -- Update journal entry status -- Need to generate this within IF
12006: -- To allow MPA report to determine if it should generate report process
12007: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
12008: ------------------------------------------------------------------------------------------
12009:
12010: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
12011: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
12012: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
12013: -- call ADRs
12014: -- Bug 4922099
12007: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
12008: ------------------------------------------------------------------------------------------
12009:
12010: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
12011: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
12012: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
12013: -- call ADRs
12014: -- Bug 4922099
12015: --
12031: , x_value_type_code => l_adr_value_type_code
12032: , p_side => 'NA'
12033: );
12034:
12035: xla_ae_lines_pkg.set_ccid(
12036: p_code_combination_id => l_ccid
12037: , p_value_type_code => l_adr_value_type_code
12038: , p_transaction_coa_id => l_adr_transaction_coa_id
12039: , p_accounting_coa_id => l_adr_accounting_coa_id
12054:
12055: --
12056: -- Update the line information that should be overwritten
12057: --
12058: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
12059: p_header_num => 1);
12060: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
12061:
12062: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12056: -- Update the line information that should be overwritten
12057: --
12058: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
12059: p_header_num => 1);
12060: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
12061:
12062: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12063:
12064: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
12058: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
12059: p_header_num => 1);
12060: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
12061:
12062: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12063:
12064: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
12065: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
12066: END IF;
12061:
12062: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12063:
12064: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
12065: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
12066: END IF;
12067:
12068: --
12069: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
12068: --
12069: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
12070: --
12071: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
12072: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
12073: ELSE
12074: ---------------------------------------------------------------------------------------------------
12075: -- 4262811a Switch Sign
12076: ---------------------------------------------------------------------------------------------------
12073: ELSE
12074: ---------------------------------------------------------------------------------------------------
12075: -- 4262811a Switch Sign
12076: ---------------------------------------------------------------------------------------------------
12077: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12078: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12079: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12080: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12081: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12074: ---------------------------------------------------------------------------------------------------
12075: -- 4262811a Switch Sign
12076: ---------------------------------------------------------------------------------------------------
12077: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12078: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12079: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12080: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12081: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12082: -- 5132302
12075: -- 4262811a Switch Sign
12076: ---------------------------------------------------------------------------------------------------
12077: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12078: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12079: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12080: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12081: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12082: -- 5132302
12083: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12076: ---------------------------------------------------------------------------------------------------
12077: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12078: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12079: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12080: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12081: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12082: -- 5132302
12083: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12084: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12077: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12078: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12079: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12080: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12081: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12082: -- 5132302
12083: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12084: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12085:
12079: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12080: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12081: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12082: -- 5132302
12083: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12084: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12085:
12086: END IF;
12087:
12080: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12081: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12082: -- 5132302
12083: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12084: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12085:
12086: END IF;
12087:
12088: -- 4955764
12085:
12086: END IF;
12087:
12088: -- 4955764
12089: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12090: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
12091:
12092:
12093: XLA_AE_LINES_PKG.ValidateCurrentLine;
12089: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12090: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
12091:
12092:
12093: XLA_AE_LINES_PKG.ValidateCurrentLine;
12094: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
12095:
12096: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
12097: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
12090: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
12091:
12092:
12093: XLA_AE_LINES_PKG.ValidateCurrentLine;
12094: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
12095:
12096: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
12097: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
12098: ,p_balance_type_code => l_balance_type_code);
12233: --
12234: -- bulk performance
12235: --
12236: l_balance_type_code VARCHAR2(1);
12237: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
12238: l_log_module VARCHAR2(240);
12239:
12240: --
12241: -- Upgrade strategy
12301: ') = 'DEFERRED_TAX'
12302: THEN
12303:
12304: --
12305: XLA_AE_LINES_PKG.SetNewLine;
12306:
12307: p_balance_type_code := l_balance_type_code;
12308: -- set the flag so later we will know whether the gain loss line needs to be created
12309:
12313:
12314: --
12315: -- bulk performance
12316: --
12317: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
12318: p_header_num => 0); -- 4262811
12319: --
12320: -- set accounting line options
12321: --
12318: p_header_num => 0); -- 4262811
12319: --
12320: -- set accounting line options
12321: --
12322: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
12323: p_natural_side_code => 'C'
12324: , p_gain_or_loss_flag => 'N'
12325: , p_gl_transfer_mode_code => 'S'
12326: , p_acct_entry_type_code => 'A'
12332: --
12333: --
12334: -- set accounting line type info
12335: --
12336: xla_ae_lines_pkg.SetAcctLineType
12337: (p_component_type => l_component_type
12338: ,p_event_type_code => l_event_type_code
12339: ,p_line_definition_owner_code => l_line_definition_owner_code
12340: ,p_line_definition_code => l_line_definition_code
12346: ,p_event_class_code => l_event_class_code);
12347: --
12348: -- set accounting class
12349: --
12350: xla_ae_lines_pkg.SetAcctClass(
12351: p_accounting_class_code => 'DEFERRED_TAX'
12352: , p_ae_header_id => l_ae_header_id
12353: );
12354:
12354:
12355: --
12356: -- set rounding class
12357: --
12358: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
12359: 'RECEIVABLE';
12360:
12361: --
12362: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12358: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
12359: 'RECEIVABLE';
12360:
12361: --
12362: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12363: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12364: --
12365: -- bulk performance
12366: --
12359: 'RECEIVABLE';
12360:
12361: --
12362: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12363: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12364: --
12365: -- bulk performance
12366: --
12367: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12363: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12364: --
12365: -- bulk performance
12366: --
12367: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12368:
12369: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12370: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
12371:
12365: -- bulk performance
12366: --
12367: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12368:
12369: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12370: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
12371:
12372: -- 4955764
12373: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12369: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12370: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
12371:
12372: -- 4955764
12373: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12374: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
12375:
12376: -- 4458381 Public Sector Enh
12377:
12407: l_rec_acct_attrs.array_char_value(12) := p_source_39;
12408: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
12409: l_rec_acct_attrs.array_num_value(13) := p_source_62;
12410:
12411: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12412: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12413:
12414: ---------------------------------------------------------------------------------------------------------------
12415: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12408: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
12409: l_rec_acct_attrs.array_num_value(13) := p_source_62;
12410:
12411: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12412: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12413:
12414: ---------------------------------------------------------------------------------------------------------------
12415: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12416: ---------------------------------------------------------------------------------------------------------------
12411: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12412: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12413:
12414: ---------------------------------------------------------------------------------------------------------------
12415: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12416: ---------------------------------------------------------------------------------------------------------------
12417: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12418:
12419: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12413:
12414: ---------------------------------------------------------------------------------------------------------------
12415: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12416: ---------------------------------------------------------------------------------------------------------------
12417: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12418:
12419: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12420: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12421:
12415: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12416: ---------------------------------------------------------------------------------------------------------------
12417: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12418:
12419: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12420: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12421:
12422: IF xla_accounting_cache_pkg.GetValueChar
12423: (p_source_code => 'LEDGER_CATEGORY_CODE'
12416: ---------------------------------------------------------------------------------------------------------------
12417: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12418:
12419: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12420: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12421:
12422: IF xla_accounting_cache_pkg.GetValueChar
12423: (p_source_code => 'LEDGER_CATEGORY_CODE'
12424: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
12427: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
12428: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
12429: )
12430: THEN
12431: xla_ae_lines_pkg.BflowUpgEntry
12432: (p_business_method_code => l_bflow_method_code
12433: ,p_business_class_code => l_bflow_class_code
12434: ,p_balance_type => l_balance_type_code);
12435: ELSE
12467: , x_value_type_code => l_adr_value_type_code
12468: , p_side => 'NA'
12469: );
12470:
12471: xla_ae_lines_pkg.set_ccid(
12472: p_code_combination_id => l_ccid
12473: , p_value_type_code => l_adr_value_type_code
12474: , p_transaction_coa_id => l_adr_transaction_coa_id
12475: , p_accounting_coa_id => l_adr_accounting_coa_id
12503: xla_accounting_err_pkg.build_message
12504: (p_appli_s_name => 'XLA'
12505: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
12506: ,p_token_1 => 'LINE_NUMBER'
12507: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
12508: ,p_token_2 => 'LINE_TYPE_NAME'
12509: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
12510: l_component_type
12511: ,l_component_code
12539: --
12540: --
12541: ------------------------------------------------------------------------------------------------
12542: -- 4219869 Business Flow
12543: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
12544: -- Prior Entry. Currently, the following code is always generated.
12545: ------------------------------------------------------------------------------------------------
12546: XLA_AE_LINES_PKG.ValidateCurrentLine;
12547:
12542: -- 4219869 Business Flow
12543: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
12544: -- Prior Entry. Currently, the following code is always generated.
12545: ------------------------------------------------------------------------------------------------
12546: XLA_AE_LINES_PKG.ValidateCurrentLine;
12547:
12548: ------------------------------------------------------------------------------------
12549: -- 4219869 Business Flow
12550: -- Populated credit and debit amounts -- Need to generate this within IF
12548: ------------------------------------------------------------------------------------
12549: -- 4219869 Business Flow
12550: -- Populated credit and debit amounts -- Need to generate this within IF
12551: ------------------------------------------------------------------------------------
12552: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
12553:
12554: ----------------------------------------------------------------------------------
12555: -- 4219869 Business Flow
12556: -- Update journal entry status -- Need to generate this within IF
12580: -- To allow MPA report to determine if it should generate report process
12581: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
12582: ------------------------------------------------------------------------------------------
12583:
12584: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
12585: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
12586: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
12587: -- call ADRs
12588: -- Bug 4922099
12581: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
12582: ------------------------------------------------------------------------------------------
12583:
12584: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
12585: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
12586: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
12587: -- call ADRs
12588: -- Bug 4922099
12589: --
12605: , x_value_type_code => l_adr_value_type_code
12606: , p_side => 'NA'
12607: );
12608:
12609: xla_ae_lines_pkg.set_ccid(
12610: p_code_combination_id => l_ccid
12611: , p_value_type_code => l_adr_value_type_code
12612: , p_transaction_coa_id => l_adr_transaction_coa_id
12613: , p_accounting_coa_id => l_adr_accounting_coa_id
12628:
12629: --
12630: -- Update the line information that should be overwritten
12631: --
12632: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
12633: p_header_num => 1);
12634: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
12635:
12636: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12630: -- Update the line information that should be overwritten
12631: --
12632: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
12633: p_header_num => 1);
12634: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
12635:
12636: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12637:
12638: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
12632: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
12633: p_header_num => 1);
12634: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
12635:
12636: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12637:
12638: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
12639: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
12640: END IF;
12635:
12636: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12637:
12638: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
12639: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
12640: END IF;
12641:
12642: --
12643: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
12642: --
12643: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
12644: --
12645: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
12646: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
12647: ELSE
12648: ---------------------------------------------------------------------------------------------------
12649: -- 4262811a Switch Sign
12650: ---------------------------------------------------------------------------------------------------
12647: ELSE
12648: ---------------------------------------------------------------------------------------------------
12649: -- 4262811a Switch Sign
12650: ---------------------------------------------------------------------------------------------------
12651: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12652: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12653: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12655: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12648: ---------------------------------------------------------------------------------------------------
12649: -- 4262811a Switch Sign
12650: ---------------------------------------------------------------------------------------------------
12651: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12652: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12653: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12655: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12656: -- 5132302
12649: -- 4262811a Switch Sign
12650: ---------------------------------------------------------------------------------------------------
12651: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12652: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12653: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12655: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12656: -- 5132302
12657: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12650: ---------------------------------------------------------------------------------------------------
12651: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12652: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12653: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12655: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12656: -- 5132302
12657: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12658: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12651: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12652: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12653: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12655: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12656: -- 5132302
12657: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12658: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12659:
12653: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12655: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12656: -- 5132302
12657: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12658: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12659:
12660: END IF;
12661:
12654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12655: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12656: -- 5132302
12657: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12658: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12659:
12660: END IF;
12661:
12662: -- 4955764
12659:
12660: END IF;
12661:
12662: -- 4955764
12663: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12664: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
12665:
12666:
12667: XLA_AE_LINES_PKG.ValidateCurrentLine;
12663: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12664: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
12665:
12666:
12667: XLA_AE_LINES_PKG.ValidateCurrentLine;
12668: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
12669:
12670: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
12671: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
12664: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
12665:
12666:
12667: XLA_AE_LINES_PKG.ValidateCurrentLine;
12668: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
12669:
12670: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
12671: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
12672: ,p_balance_type_code => l_balance_type_code);
12813: --
12814: -- bulk performance
12815: --
12816: l_balance_type_code VARCHAR2(1);
12817: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
12818: l_log_module VARCHAR2(240);
12819:
12820: --
12821: -- Upgrade strategy
12881: ') = 'REC'
12882: THEN
12883:
12884: --
12885: XLA_AE_LINES_PKG.SetNewLine;
12886:
12887: p_balance_type_code := l_balance_type_code;
12888: -- set the flag so later we will know whether the gain loss line needs to be created
12889:
12893:
12894: --
12895: -- bulk performance
12896: --
12897: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
12898: p_header_num => 0); -- 4262811
12899: --
12900: -- set accounting line options
12901: --
12898: p_header_num => 0); -- 4262811
12899: --
12900: -- set accounting line options
12901: --
12902: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
12903: p_natural_side_code => 'C'
12904: , p_gain_or_loss_flag => 'N'
12905: , p_gl_transfer_mode_code => 'S'
12906: , p_acct_entry_type_code => 'A'
12912: --
12913: --
12914: -- set accounting line type info
12915: --
12916: xla_ae_lines_pkg.SetAcctLineType
12917: (p_component_type => l_component_type
12918: ,p_event_type_code => l_event_type_code
12919: ,p_line_definition_owner_code => l_line_definition_owner_code
12920: ,p_line_definition_code => l_line_definition_code
12926: ,p_event_class_code => l_event_class_code);
12927: --
12928: -- set accounting class
12929: --
12930: xla_ae_lines_pkg.SetAcctClass(
12931: p_accounting_class_code => 'RECEIVABLE'
12932: , p_ae_header_id => l_ae_header_id
12933: );
12934:
12934:
12935: --
12936: -- set rounding class
12937: --
12938: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
12939: 'RECEIVABLE';
12940:
12941: --
12942: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12938: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
12939: 'RECEIVABLE';
12940:
12941: --
12942: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12943: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12944: --
12945: -- bulk performance
12946: --
12939: 'RECEIVABLE';
12940:
12941: --
12942: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12943: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12944: --
12945: -- bulk performance
12946: --
12947: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12943: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12944: --
12945: -- bulk performance
12946: --
12947: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12948:
12949: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12950: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
12951:
12945: -- bulk performance
12946: --
12947: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12948:
12949: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12950: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
12951:
12952: -- 4955764
12953: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12949: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12950: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
12951:
12952: -- 4955764
12953: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12954: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
12955:
12956: -- 4458381 Public Sector Enh
12957:
12987: l_rec_acct_attrs.array_char_value(12) := p_source_39;
12988: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
12989: l_rec_acct_attrs.array_num_value(13) := p_source_62;
12990:
12991: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12992: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12993:
12994: ---------------------------------------------------------------------------------------------------------------
12995: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12988: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
12989: l_rec_acct_attrs.array_num_value(13) := p_source_62;
12990:
12991: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12992: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12993:
12994: ---------------------------------------------------------------------------------------------------------------
12995: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12996: ---------------------------------------------------------------------------------------------------------------
12991: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12992: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12993:
12994: ---------------------------------------------------------------------------------------------------------------
12995: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12996: ---------------------------------------------------------------------------------------------------------------
12997: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12998:
12999: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12993:
12994: ---------------------------------------------------------------------------------------------------------------
12995: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12996: ---------------------------------------------------------------------------------------------------------------
12997: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12998:
12999: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13000: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13001:
12995: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12996: ---------------------------------------------------------------------------------------------------------------
12997: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12998:
12999: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13000: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13001:
13002: IF xla_accounting_cache_pkg.GetValueChar
13003: (p_source_code => 'LEDGER_CATEGORY_CODE'
12996: ---------------------------------------------------------------------------------------------------------------
12997: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12998:
12999: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13000: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13001:
13002: IF xla_accounting_cache_pkg.GetValueChar
13003: (p_source_code => 'LEDGER_CATEGORY_CODE'
13004: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
13007: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
13008: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
13009: )
13010: THEN
13011: xla_ae_lines_pkg.BflowUpgEntry
13012: (p_business_method_code => l_bflow_method_code
13013: ,p_business_class_code => l_bflow_class_code
13014: ,p_balance_type => l_balance_type_code);
13015: ELSE
13024: --
13025: -- call description
13026: --
13027:
13028: xla_ae_lines_pkg.SetLineDescription(
13029: p_ae_header_id => l_ae_header_id
13030: ,p_description => Description_1 (
13031: p_application_id => p_application_id
13032: , p_ae_header_id => l_ae_header_id
13059: , x_value_type_code => l_adr_value_type_code
13060: , p_side => 'NA'
13061: );
13062:
13063: xla_ae_lines_pkg.set_ccid(
13064: p_code_combination_id => l_ccid
13065: , p_value_type_code => l_adr_value_type_code
13066: , p_transaction_coa_id => l_adr_transaction_coa_id
13067: , p_accounting_coa_id => l_adr_accounting_coa_id
13095: xla_accounting_err_pkg.build_message
13096: (p_appli_s_name => 'XLA'
13097: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
13098: ,p_token_1 => 'LINE_NUMBER'
13099: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
13100: ,p_token_2 => 'LINE_TYPE_NAME'
13101: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
13102: l_component_type
13103: ,l_component_code
13131: --
13132: --
13133: ------------------------------------------------------------------------------------------------
13134: -- 4219869 Business Flow
13135: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
13136: -- Prior Entry. Currently, the following code is always generated.
13137: ------------------------------------------------------------------------------------------------
13138: XLA_AE_LINES_PKG.ValidateCurrentLine;
13139:
13134: -- 4219869 Business Flow
13135: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
13136: -- Prior Entry. Currently, the following code is always generated.
13137: ------------------------------------------------------------------------------------------------
13138: XLA_AE_LINES_PKG.ValidateCurrentLine;
13139:
13140: ------------------------------------------------------------------------------------
13141: -- 4219869 Business Flow
13142: -- Populated credit and debit amounts -- Need to generate this within IF
13140: ------------------------------------------------------------------------------------
13141: -- 4219869 Business Flow
13142: -- Populated credit and debit amounts -- Need to generate this within IF
13143: ------------------------------------------------------------------------------------
13144: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13145:
13146: ----------------------------------------------------------------------------------
13147: -- 4219869 Business Flow
13148: -- Update journal entry status -- Need to generate this within IF
13172: -- To allow MPA report to determine if it should generate report process
13173: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
13174: ------------------------------------------------------------------------------------------
13175:
13176: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
13177: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
13178: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
13179: -- call ADRs
13180: -- Bug 4922099
13173: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
13174: ------------------------------------------------------------------------------------------
13175:
13176: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
13177: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
13178: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
13179: -- call ADRs
13180: -- Bug 4922099
13181: --
13197: , x_value_type_code => l_adr_value_type_code
13198: , p_side => 'NA'
13199: );
13200:
13201: xla_ae_lines_pkg.set_ccid(
13202: p_code_combination_id => l_ccid
13203: , p_value_type_code => l_adr_value_type_code
13204: , p_transaction_coa_id => l_adr_transaction_coa_id
13205: , p_accounting_coa_id => l_adr_accounting_coa_id
13220:
13221: --
13222: -- Update the line information that should be overwritten
13223: --
13224: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13225: p_header_num => 1);
13226: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13227:
13228: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13222: -- Update the line information that should be overwritten
13223: --
13224: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13225: p_header_num => 1);
13226: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13227:
13228: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13229:
13230: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13224: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13225: p_header_num => 1);
13226: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13227:
13228: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13229:
13230: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13231: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
13232: END IF;
13227:
13228: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13229:
13230: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13231: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
13232: END IF;
13233:
13234: --
13235: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
13234: --
13235: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
13236: --
13237: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
13238: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
13239: ELSE
13240: ---------------------------------------------------------------------------------------------------
13241: -- 4262811a Switch Sign
13242: ---------------------------------------------------------------------------------------------------
13239: ELSE
13240: ---------------------------------------------------------------------------------------------------
13241: -- 4262811a Switch Sign
13242: ---------------------------------------------------------------------------------------------------
13243: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13244: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13245: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13246: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13247: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13240: ---------------------------------------------------------------------------------------------------
13241: -- 4262811a Switch Sign
13242: ---------------------------------------------------------------------------------------------------
13243: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13244: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13245: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13246: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13247: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13248: -- 5132302
13241: -- 4262811a Switch Sign
13242: ---------------------------------------------------------------------------------------------------
13243: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13244: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13245: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13246: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13247: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13248: -- 5132302
13249: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13242: ---------------------------------------------------------------------------------------------------
13243: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13244: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13245: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13246: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13247: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13248: -- 5132302
13249: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13250: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13243: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13244: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13245: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13246: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13247: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13248: -- 5132302
13249: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13250: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13251:
13245: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13246: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13247: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13248: -- 5132302
13249: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13250: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13251:
13252: END IF;
13253:
13246: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13247: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13248: -- 5132302
13249: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13250: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13251:
13252: END IF;
13253:
13254: -- 4955764
13251:
13252: END IF;
13253:
13254: -- 4955764
13255: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13256: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13257:
13258:
13259: XLA_AE_LINES_PKG.ValidateCurrentLine;
13255: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13256: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13257:
13258:
13259: XLA_AE_LINES_PKG.ValidateCurrentLine;
13260: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13261:
13262: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
13263: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
13256: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13257:
13258:
13259: XLA_AE_LINES_PKG.ValidateCurrentLine;
13260: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13261:
13262: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
13263: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
13264: ,p_balance_type_code => l_balance_type_code);
13399: --
13400: -- bulk performance
13401: --
13402: l_balance_type_code VARCHAR2(1);
13403: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
13404: l_log_module VARCHAR2(240);
13405:
13406: --
13407: -- Upgrade strategy
13467: ') = 'TAX'
13468: THEN
13469:
13470: --
13471: XLA_AE_LINES_PKG.SetNewLine;
13472:
13473: p_balance_type_code := l_balance_type_code;
13474: -- set the flag so later we will know whether the gain loss line needs to be created
13475:
13479:
13480: --
13481: -- bulk performance
13482: --
13483: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
13484: p_header_num => 0); -- 4262811
13485: --
13486: -- set accounting line options
13487: --
13484: p_header_num => 0); -- 4262811
13485: --
13486: -- set accounting line options
13487: --
13488: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
13489: p_natural_side_code => 'C'
13490: , p_gain_or_loss_flag => 'N'
13491: , p_gl_transfer_mode_code => 'S'
13492: , p_acct_entry_type_code => 'A'
13498: --
13499: --
13500: -- set accounting line type info
13501: --
13502: xla_ae_lines_pkg.SetAcctLineType
13503: (p_component_type => l_component_type
13504: ,p_event_type_code => l_event_type_code
13505: ,p_line_definition_owner_code => l_line_definition_owner_code
13506: ,p_line_definition_code => l_line_definition_code
13512: ,p_event_class_code => l_event_class_code);
13513: --
13514: -- set accounting class
13515: --
13516: xla_ae_lines_pkg.SetAcctClass(
13517: p_accounting_class_code => 'TAX'
13518: , p_ae_header_id => l_ae_header_id
13519: );
13520:
13520:
13521: --
13522: -- set rounding class
13523: --
13524: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
13525: 'RECEIVABLE';
13526:
13527: --
13528: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13524: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
13525: 'RECEIVABLE';
13526:
13527: --
13528: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13529: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13530: --
13531: -- bulk performance
13532: --
13525: 'RECEIVABLE';
13526:
13527: --
13528: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13529: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13530: --
13531: -- bulk performance
13532: --
13533: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13529: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13530: --
13531: -- bulk performance
13532: --
13533: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13534:
13535: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13536: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13537:
13531: -- bulk performance
13532: --
13533: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13534:
13535: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13536: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13537:
13538: -- 4955764
13539: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13535: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13536: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13537:
13538: -- 4955764
13539: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13540: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
13541:
13542: -- 4458381 Public Sector Enh
13543:
13573: l_rec_acct_attrs.array_char_value(12) := p_source_39;
13574: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
13575: l_rec_acct_attrs.array_num_value(13) := p_source_62;
13576:
13577: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13578: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13579:
13580: ---------------------------------------------------------------------------------------------------------------
13581: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13574: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
13575: l_rec_acct_attrs.array_num_value(13) := p_source_62;
13576:
13577: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13578: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13579:
13580: ---------------------------------------------------------------------------------------------------------------
13581: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13582: ---------------------------------------------------------------------------------------------------------------
13577: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13578: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13579:
13580: ---------------------------------------------------------------------------------------------------------------
13581: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13582: ---------------------------------------------------------------------------------------------------------------
13583: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13584:
13585: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13579:
13580: ---------------------------------------------------------------------------------------------------------------
13581: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13582: ---------------------------------------------------------------------------------------------------------------
13583: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13584:
13585: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13586: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13587:
13581: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13582: ---------------------------------------------------------------------------------------------------------------
13583: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13584:
13585: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13586: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13587:
13588: IF xla_accounting_cache_pkg.GetValueChar
13589: (p_source_code => 'LEDGER_CATEGORY_CODE'
13582: ---------------------------------------------------------------------------------------------------------------
13583: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13584:
13585: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13586: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13587:
13588: IF xla_accounting_cache_pkg.GetValueChar
13589: (p_source_code => 'LEDGER_CATEGORY_CODE'
13590: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
13593: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
13594: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
13595: )
13596: THEN
13597: xla_ae_lines_pkg.BflowUpgEntry
13598: (p_business_method_code => l_bflow_method_code
13599: ,p_business_class_code => l_bflow_class_code
13600: ,p_balance_type => l_balance_type_code);
13601: ELSE
13633: , x_value_type_code => l_adr_value_type_code
13634: , p_side => 'NA'
13635: );
13636:
13637: xla_ae_lines_pkg.set_ccid(
13638: p_code_combination_id => l_ccid
13639: , p_value_type_code => l_adr_value_type_code
13640: , p_transaction_coa_id => l_adr_transaction_coa_id
13641: , p_accounting_coa_id => l_adr_accounting_coa_id
13669: xla_accounting_err_pkg.build_message
13670: (p_appli_s_name => 'XLA'
13671: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
13672: ,p_token_1 => 'LINE_NUMBER'
13673: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
13674: ,p_token_2 => 'LINE_TYPE_NAME'
13675: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
13676: l_component_type
13677: ,l_component_code
13705: --
13706: --
13707: ------------------------------------------------------------------------------------------------
13708: -- 4219869 Business Flow
13709: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
13710: -- Prior Entry. Currently, the following code is always generated.
13711: ------------------------------------------------------------------------------------------------
13712: XLA_AE_LINES_PKG.ValidateCurrentLine;
13713:
13708: -- 4219869 Business Flow
13709: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
13710: -- Prior Entry. Currently, the following code is always generated.
13711: ------------------------------------------------------------------------------------------------
13712: XLA_AE_LINES_PKG.ValidateCurrentLine;
13713:
13714: ------------------------------------------------------------------------------------
13715: -- 4219869 Business Flow
13716: -- Populated credit and debit amounts -- Need to generate this within IF
13714: ------------------------------------------------------------------------------------
13715: -- 4219869 Business Flow
13716: -- Populated credit and debit amounts -- Need to generate this within IF
13717: ------------------------------------------------------------------------------------
13718: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13719:
13720: ----------------------------------------------------------------------------------
13721: -- 4219869 Business Flow
13722: -- Update journal entry status -- Need to generate this within IF
13746: -- To allow MPA report to determine if it should generate report process
13747: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
13748: ------------------------------------------------------------------------------------------
13749:
13750: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
13751: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
13752: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
13753: -- call ADRs
13754: -- Bug 4922099
13747: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
13748: ------------------------------------------------------------------------------------------
13749:
13750: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
13751: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
13752: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
13753: -- call ADRs
13754: -- Bug 4922099
13755: --
13771: , x_value_type_code => l_adr_value_type_code
13772: , p_side => 'NA'
13773: );
13774:
13775: xla_ae_lines_pkg.set_ccid(
13776: p_code_combination_id => l_ccid
13777: , p_value_type_code => l_adr_value_type_code
13778: , p_transaction_coa_id => l_adr_transaction_coa_id
13779: , p_accounting_coa_id => l_adr_accounting_coa_id
13794:
13795: --
13796: -- Update the line information that should be overwritten
13797: --
13798: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13799: p_header_num => 1);
13800: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13801:
13802: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13796: -- Update the line information that should be overwritten
13797: --
13798: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13799: p_header_num => 1);
13800: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13801:
13802: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13803:
13804: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13798: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13799: p_header_num => 1);
13800: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13801:
13802: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13803:
13804: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13805: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
13806: END IF;
13801:
13802: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13803:
13804: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13805: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
13806: END IF;
13807:
13808: --
13809: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
13808: --
13809: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
13810: --
13811: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
13812: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
13813: ELSE
13814: ---------------------------------------------------------------------------------------------------
13815: -- 4262811a Switch Sign
13816: ---------------------------------------------------------------------------------------------------
13813: ELSE
13814: ---------------------------------------------------------------------------------------------------
13815: -- 4262811a Switch Sign
13816: ---------------------------------------------------------------------------------------------------
13817: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13818: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13819: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13820: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13821: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13814: ---------------------------------------------------------------------------------------------------
13815: -- 4262811a Switch Sign
13816: ---------------------------------------------------------------------------------------------------
13817: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13818: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13819: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13820: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13821: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13822: -- 5132302
13815: -- 4262811a Switch Sign
13816: ---------------------------------------------------------------------------------------------------
13817: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13818: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13819: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13820: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13821: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13822: -- 5132302
13823: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13816: ---------------------------------------------------------------------------------------------------
13817: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13818: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13819: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13820: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13821: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13822: -- 5132302
13823: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13824: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13817: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13818: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13819: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13820: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13821: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13822: -- 5132302
13823: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13824: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13825:
13819: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13820: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13821: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13822: -- 5132302
13823: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13824: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13825:
13826: END IF;
13827:
13820: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13821: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13822: -- 5132302
13823: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13824: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13825:
13826: END IF;
13827:
13828: -- 4955764
13825:
13826: END IF;
13827:
13828: -- 4955764
13829: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13830: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13831:
13832:
13833: XLA_AE_LINES_PKG.ValidateCurrentLine;
13829: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13830: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13831:
13832:
13833: XLA_AE_LINES_PKG.ValidateCurrentLine;
13834: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13835:
13836: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
13837: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
13830: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13831:
13832:
13833: XLA_AE_LINES_PKG.ValidateCurrentLine;
13834: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13835:
13836: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
13837: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
13838: ,p_balance_type_code => l_balance_type_code);
13975: --
13976: -- bulk performance
13977: --
13978: l_balance_type_code VARCHAR2(1);
13979: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
13980: l_log_module VARCHAR2(240);
13981:
13982: --
13983: -- Upgrade strategy
14049: ') = 'CM_REFUND')
14050: THEN
14051:
14052: --
14053: XLA_AE_LINES_PKG.SetNewLine;
14054:
14055: p_balance_type_code := l_balance_type_code;
14056: -- set the flag so later we will know whether the gain loss line needs to be created
14057:
14061:
14062: --
14063: -- bulk performance
14064: --
14065: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
14066: p_header_num => 0); -- 4262811
14067: --
14068: -- set accounting line options
14069: --
14066: p_header_num => 0); -- 4262811
14067: --
14068: -- set accounting line options
14069: --
14070: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
14071: p_natural_side_code => 'C'
14072: , p_gain_or_loss_flag => 'N'
14073: , p_gl_transfer_mode_code => 'S'
14074: , p_acct_entry_type_code => 'A'
14080: --
14081: --
14082: -- set accounting line type info
14083: --
14084: xla_ae_lines_pkg.SetAcctLineType
14085: (p_component_type => l_component_type
14086: ,p_event_type_code => l_event_type_code
14087: ,p_line_definition_owner_code => l_line_definition_owner_code
14088: ,p_line_definition_code => l_line_definition_code
14094: ,p_event_class_code => l_event_class_code);
14095: --
14096: -- set accounting class
14097: --
14098: xla_ae_lines_pkg.SetAcctClass(
14099: p_accounting_class_code => 'REFUND'
14100: , p_ae_header_id => l_ae_header_id
14101: );
14102:
14102:
14103: --
14104: -- set rounding class
14105: --
14106: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
14107: 'REFUND';
14108:
14109: --
14110: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
14106: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
14107: 'REFUND';
14108:
14109: --
14110: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
14111: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
14112: --
14113: -- bulk performance
14114: --
14107: 'REFUND';
14108:
14109: --
14110: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
14111: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
14112: --
14113: -- bulk performance
14114: --
14115: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
14111: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
14112: --
14113: -- bulk performance
14114: --
14115: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
14116:
14117: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
14118: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
14119:
14113: -- bulk performance
14114: --
14115: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
14116:
14117: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
14118: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
14119:
14120: -- 4955764
14121: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14117: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
14118: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
14119:
14120: -- 4955764
14121: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14122: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
14123:
14124: -- 4458381 Public Sector Enh
14125:
14155: l_rec_acct_attrs.array_char_value(12) := p_source_39;
14156: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
14157: l_rec_acct_attrs.array_num_value(13) := p_source_62;
14158:
14159: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
14160: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
14161:
14162: ---------------------------------------------------------------------------------------------------------------
14163: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14156: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
14157: l_rec_acct_attrs.array_num_value(13) := p_source_62;
14158:
14159: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
14160: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
14161:
14162: ---------------------------------------------------------------------------------------------------------------
14163: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14164: ---------------------------------------------------------------------------------------------------------------
14159: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
14160: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
14161:
14162: ---------------------------------------------------------------------------------------------------------------
14163: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14164: ---------------------------------------------------------------------------------------------------------------
14165: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14166:
14167: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14161:
14162: ---------------------------------------------------------------------------------------------------------------
14163: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14164: ---------------------------------------------------------------------------------------------------------------
14165: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14166:
14167: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14168: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14169:
14163: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14164: ---------------------------------------------------------------------------------------------------------------
14165: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14166:
14167: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14168: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14169:
14170: IF xla_accounting_cache_pkg.GetValueChar
14171: (p_source_code => 'LEDGER_CATEGORY_CODE'
14164: ---------------------------------------------------------------------------------------------------------------
14165: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14166:
14167: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14168: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14169:
14170: IF xla_accounting_cache_pkg.GetValueChar
14171: (p_source_code => 'LEDGER_CATEGORY_CODE'
14172: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
14175: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
14176: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
14177: )
14178: THEN
14179: xla_ae_lines_pkg.BflowUpgEntry
14180: (p_business_method_code => l_bflow_method_code
14181: ,p_business_class_code => l_bflow_class_code
14182: ,p_balance_type => l_balance_type_code);
14183: ELSE
14215: , x_value_type_code => l_adr_value_type_code
14216: , p_side => 'NA'
14217: );
14218:
14219: xla_ae_lines_pkg.set_ccid(
14220: p_code_combination_id => l_ccid
14221: , p_value_type_code => l_adr_value_type_code
14222: , p_transaction_coa_id => l_adr_transaction_coa_id
14223: , p_accounting_coa_id => l_adr_accounting_coa_id
14251: xla_accounting_err_pkg.build_message
14252: (p_appli_s_name => 'XLA'
14253: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
14254: ,p_token_1 => 'LINE_NUMBER'
14255: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
14256: ,p_token_2 => 'LINE_TYPE_NAME'
14257: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
14258: l_component_type
14259: ,l_component_code
14287: --
14288: --
14289: ------------------------------------------------------------------------------------------------
14290: -- 4219869 Business Flow
14291: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
14292: -- Prior Entry. Currently, the following code is always generated.
14293: ------------------------------------------------------------------------------------------------
14294: XLA_AE_LINES_PKG.ValidateCurrentLine;
14295:
14290: -- 4219869 Business Flow
14291: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
14292: -- Prior Entry. Currently, the following code is always generated.
14293: ------------------------------------------------------------------------------------------------
14294: XLA_AE_LINES_PKG.ValidateCurrentLine;
14295:
14296: ------------------------------------------------------------------------------------
14297: -- 4219869 Business Flow
14298: -- Populated credit and debit amounts -- Need to generate this within IF
14296: ------------------------------------------------------------------------------------
14297: -- 4219869 Business Flow
14298: -- Populated credit and debit amounts -- Need to generate this within IF
14299: ------------------------------------------------------------------------------------
14300: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14301:
14302: ----------------------------------------------------------------------------------
14303: -- 4219869 Business Flow
14304: -- Update journal entry status -- Need to generate this within IF
14328: -- To allow MPA report to determine if it should generate report process
14329: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
14330: ------------------------------------------------------------------------------------------
14331:
14332: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
14333: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
14334: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
14335: -- call ADRs
14336: -- Bug 4922099
14329: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
14330: ------------------------------------------------------------------------------------------
14331:
14332: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
14333: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
14334: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
14335: -- call ADRs
14336: -- Bug 4922099
14337: --
14353: , x_value_type_code => l_adr_value_type_code
14354: , p_side => 'NA'
14355: );
14356:
14357: xla_ae_lines_pkg.set_ccid(
14358: p_code_combination_id => l_ccid
14359: , p_value_type_code => l_adr_value_type_code
14360: , p_transaction_coa_id => l_adr_transaction_coa_id
14361: , p_accounting_coa_id => l_adr_accounting_coa_id
14376:
14377: --
14378: -- Update the line information that should be overwritten
14379: --
14380: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14381: p_header_num => 1);
14382: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14383:
14384: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14378: -- Update the line information that should be overwritten
14379: --
14380: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14381: p_header_num => 1);
14382: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14383:
14384: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14385:
14386: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14380: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14381: p_header_num => 1);
14382: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14383:
14384: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14385:
14386: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14387: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
14388: END IF;
14383:
14384: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14385:
14386: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14387: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
14388: END IF;
14389:
14390: --
14391: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
14390: --
14391: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
14392: --
14393: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
14394: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
14395: ELSE
14396: ---------------------------------------------------------------------------------------------------
14397: -- 4262811a Switch Sign
14398: ---------------------------------------------------------------------------------------------------
14395: ELSE
14396: ---------------------------------------------------------------------------------------------------
14397: -- 4262811a Switch Sign
14398: ---------------------------------------------------------------------------------------------------
14399: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14400: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14401: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14402: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14403: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14396: ---------------------------------------------------------------------------------------------------
14397: -- 4262811a Switch Sign
14398: ---------------------------------------------------------------------------------------------------
14399: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14400: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14401: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14402: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14403: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14404: -- 5132302
14397: -- 4262811a Switch Sign
14398: ---------------------------------------------------------------------------------------------------
14399: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14400: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14401: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14402: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14403: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14404: -- 5132302
14405: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14398: ---------------------------------------------------------------------------------------------------
14399: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14400: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14401: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14402: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14403: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14404: -- 5132302
14405: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14406: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14399: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14400: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14401: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14402: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14403: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14404: -- 5132302
14405: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14406: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14407:
14401: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14402: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14403: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14404: -- 5132302
14405: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14406: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14407:
14408: END IF;
14409:
14402: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14403: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14404: -- 5132302
14405: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14406: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14407:
14408: END IF;
14409:
14410: -- 4955764
14407:
14408: END IF;
14409:
14410: -- 4955764
14411: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14412: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14413:
14414:
14415: XLA_AE_LINES_PKG.ValidateCurrentLine;
14411: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14412: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14413:
14414:
14415: XLA_AE_LINES_PKG.ValidateCurrentLine;
14416: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14417:
14418: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
14419: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
14412: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14413:
14414:
14415: XLA_AE_LINES_PKG.ValidateCurrentLine;
14416: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14417:
14418: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
14419: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
14420: ,p_balance_type_code => l_balance_type_code);
14555: --
14556: -- bulk performance
14557: --
14558: l_balance_type_code VARCHAR2(1);
14559: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
14560: l_log_module VARCHAR2(240);
14561:
14562: --
14563: -- Upgrade strategy
14623: ') = 'CHARGES'
14624: THEN
14625:
14626: --
14627: XLA_AE_LINES_PKG.SetNewLine;
14628:
14629: p_balance_type_code := l_balance_type_code;
14630: -- set the flag so later we will know whether the gain loss line needs to be created
14631:
14635:
14636: --
14637: -- bulk performance
14638: --
14639: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
14640: p_header_num => 0); -- 4262811
14641: --
14642: -- set accounting line options
14643: --
14640: p_header_num => 0); -- 4262811
14641: --
14642: -- set accounting line options
14643: --
14644: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
14645: p_natural_side_code => 'C'
14646: , p_gain_or_loss_flag => 'N'
14647: , p_gl_transfer_mode_code => 'S'
14648: , p_acct_entry_type_code => 'A'
14654: --
14655: --
14656: -- set accounting line type info
14657: --
14658: xla_ae_lines_pkg.SetAcctLineType
14659: (p_component_type => l_component_type
14660: ,p_event_type_code => l_event_type_code
14661: ,p_line_definition_owner_code => l_line_definition_owner_code
14662: ,p_line_definition_code => l_line_definition_code
14668: ,p_event_class_code => l_event_class_code);
14669: --
14670: -- set accounting class
14671: --
14672: xla_ae_lines_pkg.SetAcctClass(
14673: p_accounting_class_code => 'CHARGES'
14674: , p_ae_header_id => l_ae_header_id
14675: );
14676:
14676:
14677: --
14678: -- set rounding class
14679: --
14680: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
14681: 'RECEIVABLE';
14682:
14683: --
14684: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
14680: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
14681: 'RECEIVABLE';
14682:
14683: --
14684: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
14685: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
14686: --
14687: -- bulk performance
14688: --
14681: 'RECEIVABLE';
14682:
14683: --
14684: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
14685: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
14686: --
14687: -- bulk performance
14688: --
14689: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
14685: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
14686: --
14687: -- bulk performance
14688: --
14689: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
14690:
14691: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
14692: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
14693:
14687: -- bulk performance
14688: --
14689: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
14690:
14691: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
14692: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
14693:
14694: -- 4955764
14695: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14691: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
14692: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
14693:
14694: -- 4955764
14695: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14696: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
14697:
14698: -- 4458381 Public Sector Enh
14699:
14729: l_rec_acct_attrs.array_char_value(12) := p_source_39;
14730: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
14731: l_rec_acct_attrs.array_num_value(13) := p_source_62;
14732:
14733: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
14734: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
14735:
14736: ---------------------------------------------------------------------------------------------------------------
14737: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14730: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
14731: l_rec_acct_attrs.array_num_value(13) := p_source_62;
14732:
14733: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
14734: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
14735:
14736: ---------------------------------------------------------------------------------------------------------------
14737: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14738: ---------------------------------------------------------------------------------------------------------------
14733: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
14734: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
14735:
14736: ---------------------------------------------------------------------------------------------------------------
14737: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14738: ---------------------------------------------------------------------------------------------------------------
14739: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14740:
14741: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14735:
14736: ---------------------------------------------------------------------------------------------------------------
14737: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14738: ---------------------------------------------------------------------------------------------------------------
14739: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14740:
14741: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14742: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14743:
14737: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14738: ---------------------------------------------------------------------------------------------------------------
14739: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14740:
14741: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14742: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14743:
14744: IF xla_accounting_cache_pkg.GetValueChar
14745: (p_source_code => 'LEDGER_CATEGORY_CODE'
14738: ---------------------------------------------------------------------------------------------------------------
14739: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14740:
14741: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14742: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14743:
14744: IF xla_accounting_cache_pkg.GetValueChar
14745: (p_source_code => 'LEDGER_CATEGORY_CODE'
14746: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
14749: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
14750: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
14751: )
14752: THEN
14753: xla_ae_lines_pkg.BflowUpgEntry
14754: (p_business_method_code => l_bflow_method_code
14755: ,p_business_class_code => l_bflow_class_code
14756: ,p_balance_type => l_balance_type_code);
14757: ELSE
14789: , x_value_type_code => l_adr_value_type_code
14790: , p_side => 'NA'
14791: );
14792:
14793: xla_ae_lines_pkg.set_ccid(
14794: p_code_combination_id => l_ccid
14795: , p_value_type_code => l_adr_value_type_code
14796: , p_transaction_coa_id => l_adr_transaction_coa_id
14797: , p_accounting_coa_id => l_adr_accounting_coa_id
14825: xla_accounting_err_pkg.build_message
14826: (p_appli_s_name => 'XLA'
14827: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
14828: ,p_token_1 => 'LINE_NUMBER'
14829: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
14830: ,p_token_2 => 'LINE_TYPE_NAME'
14831: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
14832: l_component_type
14833: ,l_component_code
14861: --
14862: --
14863: ------------------------------------------------------------------------------------------------
14864: -- 4219869 Business Flow
14865: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
14866: -- Prior Entry. Currently, the following code is always generated.
14867: ------------------------------------------------------------------------------------------------
14868: XLA_AE_LINES_PKG.ValidateCurrentLine;
14869:
14864: -- 4219869 Business Flow
14865: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
14866: -- Prior Entry. Currently, the following code is always generated.
14867: ------------------------------------------------------------------------------------------------
14868: XLA_AE_LINES_PKG.ValidateCurrentLine;
14869:
14870: ------------------------------------------------------------------------------------
14871: -- 4219869 Business Flow
14872: -- Populated credit and debit amounts -- Need to generate this within IF
14870: ------------------------------------------------------------------------------------
14871: -- 4219869 Business Flow
14872: -- Populated credit and debit amounts -- Need to generate this within IF
14873: ------------------------------------------------------------------------------------
14874: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14875:
14876: ----------------------------------------------------------------------------------
14877: -- 4219869 Business Flow
14878: -- Update journal entry status -- Need to generate this within IF
14902: -- To allow MPA report to determine if it should generate report process
14903: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
14904: ------------------------------------------------------------------------------------------
14905:
14906: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
14907: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
14908: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
14909: -- call ADRs
14910: -- Bug 4922099
14903: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
14904: ------------------------------------------------------------------------------------------
14905:
14906: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
14907: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
14908: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
14909: -- call ADRs
14910: -- Bug 4922099
14911: --
14927: , x_value_type_code => l_adr_value_type_code
14928: , p_side => 'NA'
14929: );
14930:
14931: xla_ae_lines_pkg.set_ccid(
14932: p_code_combination_id => l_ccid
14933: , p_value_type_code => l_adr_value_type_code
14934: , p_transaction_coa_id => l_adr_transaction_coa_id
14935: , p_accounting_coa_id => l_adr_accounting_coa_id
14950:
14951: --
14952: -- Update the line information that should be overwritten
14953: --
14954: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14955: p_header_num => 1);
14956: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14957:
14958: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14952: -- Update the line information that should be overwritten
14953: --
14954: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14955: p_header_num => 1);
14956: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14957:
14958: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14959:
14960: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14954: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14955: p_header_num => 1);
14956: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14957:
14958: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14959:
14960: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14961: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
14962: END IF;
14957:
14958: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14959:
14960: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14961: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
14962: END IF;
14963:
14964: --
14965: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
14964: --
14965: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
14966: --
14967: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
14968: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
14969: ELSE
14970: ---------------------------------------------------------------------------------------------------
14971: -- 4262811a Switch Sign
14972: ---------------------------------------------------------------------------------------------------
14969: ELSE
14970: ---------------------------------------------------------------------------------------------------
14971: -- 4262811a Switch Sign
14972: ---------------------------------------------------------------------------------------------------
14973: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14974: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14975: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14976: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14977: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14970: ---------------------------------------------------------------------------------------------------
14971: -- 4262811a Switch Sign
14972: ---------------------------------------------------------------------------------------------------
14973: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14974: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14975: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14976: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14977: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14978: -- 5132302
14971: -- 4262811a Switch Sign
14972: ---------------------------------------------------------------------------------------------------
14973: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14974: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14975: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14976: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14977: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14978: -- 5132302
14979: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14972: ---------------------------------------------------------------------------------------------------
14973: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14974: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14975: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14976: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14977: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14978: -- 5132302
14979: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14980: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14973: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14974: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14975: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14976: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14977: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14978: -- 5132302
14979: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14980: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14981:
14975: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14976: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14977: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14978: -- 5132302
14979: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14980: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14981:
14982: END IF;
14983:
14976: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14977: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14978: -- 5132302
14979: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14980: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14981:
14982: END IF;
14983:
14984: -- 4955764
14981:
14982: END IF;
14983:
14984: -- 4955764
14985: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14986: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14987:
14988:
14989: XLA_AE_LINES_PKG.ValidateCurrentLine;
14985: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14986: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14987:
14988:
14989: XLA_AE_LINES_PKG.ValidateCurrentLine;
14990: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14991:
14992: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
14993: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
14986: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14987:
14988:
14989: XLA_AE_LINES_PKG.ValidateCurrentLine;
14990: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14991:
14992: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
14993: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
14994: ,p_balance_type_code => l_balance_type_code);
15129: --
15130: -- bulk performance
15131: --
15132: l_balance_type_code VARCHAR2(1);
15133: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
15134: l_log_module VARCHAR2(240);
15135:
15136: --
15137: -- Upgrade strategy
15197: ') = 'FREIGHT'
15198: THEN
15199:
15200: --
15201: XLA_AE_LINES_PKG.SetNewLine;
15202:
15203: p_balance_type_code := l_balance_type_code;
15204: -- set the flag so later we will know whether the gain loss line needs to be created
15205:
15209:
15210: --
15211: -- bulk performance
15212: --
15213: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
15214: p_header_num => 0); -- 4262811
15215: --
15216: -- set accounting line options
15217: --
15214: p_header_num => 0); -- 4262811
15215: --
15216: -- set accounting line options
15217: --
15218: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
15219: p_natural_side_code => 'C'
15220: , p_gain_or_loss_flag => 'N'
15221: , p_gl_transfer_mode_code => 'S'
15222: , p_acct_entry_type_code => 'A'
15228: --
15229: --
15230: -- set accounting line type info
15231: --
15232: xla_ae_lines_pkg.SetAcctLineType
15233: (p_component_type => l_component_type
15234: ,p_event_type_code => l_event_type_code
15235: ,p_line_definition_owner_code => l_line_definition_owner_code
15236: ,p_line_definition_code => l_line_definition_code
15242: ,p_event_class_code => l_event_class_code);
15243: --
15244: -- set accounting class
15245: --
15246: xla_ae_lines_pkg.SetAcctClass(
15247: p_accounting_class_code => 'FREIGHT'
15248: , p_ae_header_id => l_ae_header_id
15249: );
15250:
15250:
15251: --
15252: -- set rounding class
15253: --
15254: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
15255: 'RECEIVABLE';
15256:
15257: --
15258: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15254: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
15255: 'RECEIVABLE';
15256:
15257: --
15258: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15259: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15260: --
15261: -- bulk performance
15262: --
15255: 'RECEIVABLE';
15256:
15257: --
15258: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15259: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15260: --
15261: -- bulk performance
15262: --
15263: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15259: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15260: --
15261: -- bulk performance
15262: --
15263: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15264:
15265: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15266: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15267:
15261: -- bulk performance
15262: --
15263: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15264:
15265: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15266: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15267:
15268: -- 4955764
15269: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15265: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15266: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15267:
15268: -- 4955764
15269: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15270: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
15271:
15272: -- 4458381 Public Sector Enh
15273:
15303: l_rec_acct_attrs.array_char_value(12) := p_source_39;
15304: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
15305: l_rec_acct_attrs.array_num_value(13) := p_source_62;
15306:
15307: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15308: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15309:
15310: ---------------------------------------------------------------------------------------------------------------
15311: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15304: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
15305: l_rec_acct_attrs.array_num_value(13) := p_source_62;
15306:
15307: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15308: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15309:
15310: ---------------------------------------------------------------------------------------------------------------
15311: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15312: ---------------------------------------------------------------------------------------------------------------
15307: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15308: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15309:
15310: ---------------------------------------------------------------------------------------------------------------
15311: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15312: ---------------------------------------------------------------------------------------------------------------
15313: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15314:
15315: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15309:
15310: ---------------------------------------------------------------------------------------------------------------
15311: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15312: ---------------------------------------------------------------------------------------------------------------
15313: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15314:
15315: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15316: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15317:
15311: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15312: ---------------------------------------------------------------------------------------------------------------
15313: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15314:
15315: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15316: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15317:
15318: IF xla_accounting_cache_pkg.GetValueChar
15319: (p_source_code => 'LEDGER_CATEGORY_CODE'
15312: ---------------------------------------------------------------------------------------------------------------
15313: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15314:
15315: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15316: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15317:
15318: IF xla_accounting_cache_pkg.GetValueChar
15319: (p_source_code => 'LEDGER_CATEGORY_CODE'
15320: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
15323: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
15324: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
15325: )
15326: THEN
15327: xla_ae_lines_pkg.BflowUpgEntry
15328: (p_business_method_code => l_bflow_method_code
15329: ,p_business_class_code => l_bflow_class_code
15330: ,p_balance_type => l_balance_type_code);
15331: ELSE
15363: , x_value_type_code => l_adr_value_type_code
15364: , p_side => 'NA'
15365: );
15366:
15367: xla_ae_lines_pkg.set_ccid(
15368: p_code_combination_id => l_ccid
15369: , p_value_type_code => l_adr_value_type_code
15370: , p_transaction_coa_id => l_adr_transaction_coa_id
15371: , p_accounting_coa_id => l_adr_accounting_coa_id
15399: xla_accounting_err_pkg.build_message
15400: (p_appli_s_name => 'XLA'
15401: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
15402: ,p_token_1 => 'LINE_NUMBER'
15403: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
15404: ,p_token_2 => 'LINE_TYPE_NAME'
15405: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
15406: l_component_type
15407: ,l_component_code
15435: --
15436: --
15437: ------------------------------------------------------------------------------------------------
15438: -- 4219869 Business Flow
15439: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
15440: -- Prior Entry. Currently, the following code is always generated.
15441: ------------------------------------------------------------------------------------------------
15442: XLA_AE_LINES_PKG.ValidateCurrentLine;
15443:
15438: -- 4219869 Business Flow
15439: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
15440: -- Prior Entry. Currently, the following code is always generated.
15441: ------------------------------------------------------------------------------------------------
15442: XLA_AE_LINES_PKG.ValidateCurrentLine;
15443:
15444: ------------------------------------------------------------------------------------
15445: -- 4219869 Business Flow
15446: -- Populated credit and debit amounts -- Need to generate this within IF
15444: ------------------------------------------------------------------------------------
15445: -- 4219869 Business Flow
15446: -- Populated credit and debit amounts -- Need to generate this within IF
15447: ------------------------------------------------------------------------------------
15448: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
15449:
15450: ----------------------------------------------------------------------------------
15451: -- 4219869 Business Flow
15452: -- Update journal entry status -- Need to generate this within IF
15476: -- To allow MPA report to determine if it should generate report process
15477: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
15478: ------------------------------------------------------------------------------------------
15479:
15480: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
15481: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
15482: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
15483: -- call ADRs
15484: -- Bug 4922099
15477: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
15478: ------------------------------------------------------------------------------------------
15479:
15480: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
15481: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
15482: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
15483: -- call ADRs
15484: -- Bug 4922099
15485: --
15501: , x_value_type_code => l_adr_value_type_code
15502: , p_side => 'NA'
15503: );
15504:
15505: xla_ae_lines_pkg.set_ccid(
15506: p_code_combination_id => l_ccid
15507: , p_value_type_code => l_adr_value_type_code
15508: , p_transaction_coa_id => l_adr_transaction_coa_id
15509: , p_accounting_coa_id => l_adr_accounting_coa_id
15524:
15525: --
15526: -- Update the line information that should be overwritten
15527: --
15528: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15529: p_header_num => 1);
15530: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15531:
15532: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15526: -- Update the line information that should be overwritten
15527: --
15528: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15529: p_header_num => 1);
15530: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15531:
15532: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15533:
15534: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15528: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15529: p_header_num => 1);
15530: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15531:
15532: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15533:
15534: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15535: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
15536: END IF;
15531:
15532: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15533:
15534: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15535: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
15536: END IF;
15537:
15538: --
15539: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
15538: --
15539: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
15540: --
15541: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
15542: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
15543: ELSE
15544: ---------------------------------------------------------------------------------------------------
15545: -- 4262811a Switch Sign
15546: ---------------------------------------------------------------------------------------------------
15543: ELSE
15544: ---------------------------------------------------------------------------------------------------
15545: -- 4262811a Switch Sign
15546: ---------------------------------------------------------------------------------------------------
15547: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15548: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15549: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15544: ---------------------------------------------------------------------------------------------------
15545: -- 4262811a Switch Sign
15546: ---------------------------------------------------------------------------------------------------
15547: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15548: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15549: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15552: -- 5132302
15545: -- 4262811a Switch Sign
15546: ---------------------------------------------------------------------------------------------------
15547: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15548: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15549: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15552: -- 5132302
15553: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15546: ---------------------------------------------------------------------------------------------------
15547: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15548: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15549: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15552: -- 5132302
15553: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15554: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15547: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15548: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15549: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15552: -- 5132302
15553: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15554: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15555:
15549: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15552: -- 5132302
15553: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15554: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15555:
15556: END IF;
15557:
15550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15552: -- 5132302
15553: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15554: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15555:
15556: END IF;
15557:
15558: -- 4955764
15555:
15556: END IF;
15557:
15558: -- 4955764
15559: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15560: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15561:
15562:
15563: XLA_AE_LINES_PKG.ValidateCurrentLine;
15559: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15560: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15561:
15562:
15563: XLA_AE_LINES_PKG.ValidateCurrentLine;
15564: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
15565:
15566: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
15567: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
15560: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15561:
15562:
15563: XLA_AE_LINES_PKG.ValidateCurrentLine;
15564: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
15565:
15566: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
15567: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
15568: ,p_balance_type_code => l_balance_type_code);
15703: --
15704: -- bulk performance
15705: --
15706: l_balance_type_code VARCHAR2(1);
15707: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
15708: l_log_module VARCHAR2(240);
15709:
15710: --
15711: -- Upgrade strategy
15771: ') = 'REC'
15772: THEN
15773:
15774: --
15775: XLA_AE_LINES_PKG.SetNewLine;
15776:
15777: p_balance_type_code := l_balance_type_code;
15778: -- set the flag so later we will know whether the gain loss line needs to be created
15779:
15783:
15784: --
15785: -- bulk performance
15786: --
15787: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
15788: p_header_num => 0); -- 4262811
15789: --
15790: -- set accounting line options
15791: --
15788: p_header_num => 0); -- 4262811
15789: --
15790: -- set accounting line options
15791: --
15792: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
15793: p_natural_side_code => 'D'
15794: , p_gain_or_loss_flag => 'N'
15795: , p_gl_transfer_mode_code => 'S'
15796: , p_acct_entry_type_code => 'A'
15802: --
15803: --
15804: -- set accounting line type info
15805: --
15806: xla_ae_lines_pkg.SetAcctLineType
15807: (p_component_type => l_component_type
15808: ,p_event_type_code => l_event_type_code
15809: ,p_line_definition_owner_code => l_line_definition_owner_code
15810: ,p_line_definition_code => l_line_definition_code
15816: ,p_event_class_code => l_event_class_code);
15817: --
15818: -- set accounting class
15819: --
15820: xla_ae_lines_pkg.SetAcctClass(
15821: p_accounting_class_code => 'RECEIVABLE'
15822: , p_ae_header_id => l_ae_header_id
15823: );
15824:
15824:
15825: --
15826: -- set rounding class
15827: --
15828: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
15829: 'RECEIVABLE';
15830:
15831: --
15832: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15828: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
15829: 'RECEIVABLE';
15830:
15831: --
15832: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15833: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15834: --
15835: -- bulk performance
15836: --
15829: 'RECEIVABLE';
15830:
15831: --
15832: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15833: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15834: --
15835: -- bulk performance
15836: --
15837: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15833: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15834: --
15835: -- bulk performance
15836: --
15837: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15838:
15839: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15840: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15841:
15835: -- bulk performance
15836: --
15837: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15838:
15839: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15840: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15841:
15842: -- 4955764
15843: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15839: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15840: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15841:
15842: -- 4955764
15843: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15844: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
15845:
15846: -- 4458381 Public Sector Enh
15847:
15877: l_rec_acct_attrs.array_char_value(12) := p_source_39;
15878: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
15879: l_rec_acct_attrs.array_num_value(13) := p_source_62;
15880:
15881: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15882: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15883:
15884: ---------------------------------------------------------------------------------------------------------------
15885: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15878: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
15879: l_rec_acct_attrs.array_num_value(13) := p_source_62;
15880:
15881: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15882: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15883:
15884: ---------------------------------------------------------------------------------------------------------------
15885: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15886: ---------------------------------------------------------------------------------------------------------------
15881: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15882: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15883:
15884: ---------------------------------------------------------------------------------------------------------------
15885: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15886: ---------------------------------------------------------------------------------------------------------------
15887: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15888:
15889: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15883:
15884: ---------------------------------------------------------------------------------------------------------------
15885: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15886: ---------------------------------------------------------------------------------------------------------------
15887: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15888:
15889: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15890: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15891:
15885: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15886: ---------------------------------------------------------------------------------------------------------------
15887: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15888:
15889: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15890: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15891:
15892: IF xla_accounting_cache_pkg.GetValueChar
15893: (p_source_code => 'LEDGER_CATEGORY_CODE'
15886: ---------------------------------------------------------------------------------------------------------------
15887: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15888:
15889: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15890: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15891:
15892: IF xla_accounting_cache_pkg.GetValueChar
15893: (p_source_code => 'LEDGER_CATEGORY_CODE'
15894: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
15897: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
15898: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
15899: )
15900: THEN
15901: xla_ae_lines_pkg.BflowUpgEntry
15902: (p_business_method_code => l_bflow_method_code
15903: ,p_business_class_code => l_bflow_class_code
15904: ,p_balance_type => l_balance_type_code);
15905: ELSE
15937: , x_value_type_code => l_adr_value_type_code
15938: , p_side => 'NA'
15939: );
15940:
15941: xla_ae_lines_pkg.set_ccid(
15942: p_code_combination_id => l_ccid
15943: , p_value_type_code => l_adr_value_type_code
15944: , p_transaction_coa_id => l_adr_transaction_coa_id
15945: , p_accounting_coa_id => l_adr_accounting_coa_id
15973: xla_accounting_err_pkg.build_message
15974: (p_appli_s_name => 'XLA'
15975: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
15976: ,p_token_1 => 'LINE_NUMBER'
15977: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
15978: ,p_token_2 => 'LINE_TYPE_NAME'
15979: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
15980: l_component_type
15981: ,l_component_code
16009: --
16010: --
16011: ------------------------------------------------------------------------------------------------
16012: -- 4219869 Business Flow
16013: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
16014: -- Prior Entry. Currently, the following code is always generated.
16015: ------------------------------------------------------------------------------------------------
16016: XLA_AE_LINES_PKG.ValidateCurrentLine;
16017:
16012: -- 4219869 Business Flow
16013: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
16014: -- Prior Entry. Currently, the following code is always generated.
16015: ------------------------------------------------------------------------------------------------
16016: XLA_AE_LINES_PKG.ValidateCurrentLine;
16017:
16018: ------------------------------------------------------------------------------------
16019: -- 4219869 Business Flow
16020: -- Populated credit and debit amounts -- Need to generate this within IF
16018: ------------------------------------------------------------------------------------
16019: -- 4219869 Business Flow
16020: -- Populated credit and debit amounts -- Need to generate this within IF
16021: ------------------------------------------------------------------------------------
16022: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
16023:
16024: ----------------------------------------------------------------------------------
16025: -- 4219869 Business Flow
16026: -- Update journal entry status -- Need to generate this within IF
16050: -- To allow MPA report to determine if it should generate report process
16051: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
16052: ------------------------------------------------------------------------------------------
16053:
16054: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
16055: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
16056: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
16057: -- call ADRs
16058: -- Bug 4922099
16051: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
16052: ------------------------------------------------------------------------------------------
16053:
16054: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
16055: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
16056: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
16057: -- call ADRs
16058: -- Bug 4922099
16059: --
16075: , x_value_type_code => l_adr_value_type_code
16076: , p_side => 'NA'
16077: );
16078:
16079: xla_ae_lines_pkg.set_ccid(
16080: p_code_combination_id => l_ccid
16081: , p_value_type_code => l_adr_value_type_code
16082: , p_transaction_coa_id => l_adr_transaction_coa_id
16083: , p_accounting_coa_id => l_adr_accounting_coa_id
16098:
16099: --
16100: -- Update the line information that should be overwritten
16101: --
16102: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
16103: p_header_num => 1);
16104: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
16105:
16106: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16100: -- Update the line information that should be overwritten
16101: --
16102: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
16103: p_header_num => 1);
16104: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
16105:
16106: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16107:
16108: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
16102: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
16103: p_header_num => 1);
16104: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
16105:
16106: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16107:
16108: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
16109: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
16110: END IF;
16105:
16106: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16107:
16108: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
16109: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
16110: END IF;
16111:
16112: --
16113: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
16112: --
16113: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
16114: --
16115: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
16116: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
16117: ELSE
16118: ---------------------------------------------------------------------------------------------------
16119: -- 4262811a Switch Sign
16120: ---------------------------------------------------------------------------------------------------
16117: ELSE
16118: ---------------------------------------------------------------------------------------------------
16119: -- 4262811a Switch Sign
16120: ---------------------------------------------------------------------------------------------------
16121: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16122: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16123: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16124: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16125: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16118: ---------------------------------------------------------------------------------------------------
16119: -- 4262811a Switch Sign
16120: ---------------------------------------------------------------------------------------------------
16121: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16122: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16123: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16124: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16125: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16126: -- 5132302
16119: -- 4262811a Switch Sign
16120: ---------------------------------------------------------------------------------------------------
16121: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16122: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16123: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16124: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16125: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16126: -- 5132302
16127: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16120: ---------------------------------------------------------------------------------------------------
16121: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16122: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16123: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16124: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16125: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16126: -- 5132302
16127: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16128: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16121: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16122: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16123: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16124: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16125: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16126: -- 5132302
16127: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16128: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16129:
16123: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16124: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16125: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16126: -- 5132302
16127: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16128: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16129:
16130: END IF;
16131:
16124: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16125: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16126: -- 5132302
16127: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16128: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16129:
16130: END IF;
16131:
16132: -- 4955764
16129:
16130: END IF;
16131:
16132: -- 4955764
16133: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16134: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
16135:
16136:
16137: XLA_AE_LINES_PKG.ValidateCurrentLine;
16133: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16134: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
16135:
16136:
16137: XLA_AE_LINES_PKG.ValidateCurrentLine;
16138: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
16139:
16140: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
16141: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
16134: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
16135:
16136:
16137: XLA_AE_LINES_PKG.ValidateCurrentLine;
16138: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
16139:
16140: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
16141: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
16142: ,p_balance_type_code => l_balance_type_code);
16279: --
16280: -- bulk performance
16281: --
16282: l_balance_type_code VARCHAR2(1);
16283: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
16284: l_log_module VARCHAR2(240);
16285:
16286: --
16287: -- Upgrade strategy
16347: ') = 'REV'
16348: THEN
16349:
16350: --
16351: XLA_AE_LINES_PKG.SetNewLine;
16352:
16353: p_balance_type_code := l_balance_type_code;
16354: -- set the flag so later we will know whether the gain loss line needs to be created
16355:
16359:
16360: --
16361: -- bulk performance
16362: --
16363: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
16364: p_header_num => 0); -- 4262811
16365: --
16366: -- set accounting line options
16367: --
16364: p_header_num => 0); -- 4262811
16365: --
16366: -- set accounting line options
16367: --
16368: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
16369: p_natural_side_code => 'C'
16370: , p_gain_or_loss_flag => 'N'
16371: , p_gl_transfer_mode_code => 'S'
16372: , p_acct_entry_type_code => 'A'
16378: --
16379: --
16380: -- set accounting line type info
16381: --
16382: xla_ae_lines_pkg.SetAcctLineType
16383: (p_component_type => l_component_type
16384: ,p_event_type_code => l_event_type_code
16385: ,p_line_definition_owner_code => l_line_definition_owner_code
16386: ,p_line_definition_code => l_line_definition_code
16392: ,p_event_class_code => l_event_class_code);
16393: --
16394: -- set accounting class
16395: --
16396: xla_ae_lines_pkg.SetAcctClass(
16397: p_accounting_class_code => 'REVENUE'
16398: , p_ae_header_id => l_ae_header_id
16399: );
16400:
16400:
16401: --
16402: -- set rounding class
16403: --
16404: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
16405: 'RECEIVABLE';
16406:
16407: --
16408: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
16404: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
16405: 'RECEIVABLE';
16406:
16407: --
16408: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
16409: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
16410: --
16411: -- bulk performance
16412: --
16405: 'RECEIVABLE';
16406:
16407: --
16408: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
16409: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
16410: --
16411: -- bulk performance
16412: --
16413: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
16409: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
16410: --
16411: -- bulk performance
16412: --
16413: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
16414:
16415: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
16416: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
16417:
16411: -- bulk performance
16412: --
16413: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
16414:
16415: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
16416: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
16417:
16418: -- 4955764
16419: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16415: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
16416: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
16417:
16418: -- 4955764
16419: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16420: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
16421:
16422: -- 4458381 Public Sector Enh
16423:
16453: l_rec_acct_attrs.array_char_value(12) := p_source_39;
16454: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
16455: l_rec_acct_attrs.array_num_value(13) := p_source_62;
16456:
16457: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
16458: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
16459:
16460: ---------------------------------------------------------------------------------------------------------------
16461: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16454: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
16455: l_rec_acct_attrs.array_num_value(13) := p_source_62;
16456:
16457: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
16458: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
16459:
16460: ---------------------------------------------------------------------------------------------------------------
16461: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16462: ---------------------------------------------------------------------------------------------------------------
16457: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
16458: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
16459:
16460: ---------------------------------------------------------------------------------------------------------------
16461: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16462: ---------------------------------------------------------------------------------------------------------------
16463: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16464:
16465: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16459:
16460: ---------------------------------------------------------------------------------------------------------------
16461: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16462: ---------------------------------------------------------------------------------------------------------------
16463: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16464:
16465: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16466: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16467:
16461: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16462: ---------------------------------------------------------------------------------------------------------------
16463: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16464:
16465: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16466: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16467:
16468: IF xla_accounting_cache_pkg.GetValueChar
16469: (p_source_code => 'LEDGER_CATEGORY_CODE'
16462: ---------------------------------------------------------------------------------------------------------------
16463: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16464:
16465: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16466: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16467:
16468: IF xla_accounting_cache_pkg.GetValueChar
16469: (p_source_code => 'LEDGER_CATEGORY_CODE'
16470: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
16473: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
16474: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
16475: )
16476: THEN
16477: xla_ae_lines_pkg.BflowUpgEntry
16478: (p_business_method_code => l_bflow_method_code
16479: ,p_business_class_code => l_bflow_class_code
16480: ,p_balance_type => l_balance_type_code);
16481: ELSE
16487: -- call analytical criteria
16488: --
16489:
16490:
16491: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
16492: xla_ae_lines_pkg.SetAnalyticalCriteria(
16493: p_analytical_criterion_name => 'Project Number'
16494: , p_analytical_criterion_owner => 'S'
16495: , p_analytical_criterion_code => 'PROJECT_NUMBER'
16488: --
16489:
16490:
16491: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
16492: xla_ae_lines_pkg.SetAnalyticalCriteria(
16493: p_analytical_criterion_name => 'Project Number'
16494: , p_analytical_criterion_owner => 'S'
16495: , p_analytical_criterion_code => 'PROJECT_NUMBER'
16496: , p_amb_context_code => 'DEFAULT'
16531: , x_value_type_code => l_adr_value_type_code
16532: , p_side => 'NA'
16533: );
16534:
16535: xla_ae_lines_pkg.set_ccid(
16536: p_code_combination_id => l_ccid
16537: , p_value_type_code => l_adr_value_type_code
16538: , p_transaction_coa_id => l_adr_transaction_coa_id
16539: , p_accounting_coa_id => l_adr_accounting_coa_id
16567: xla_accounting_err_pkg.build_message
16568: (p_appli_s_name => 'XLA'
16569: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
16570: ,p_token_1 => 'LINE_NUMBER'
16571: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
16572: ,p_token_2 => 'LINE_TYPE_NAME'
16573: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
16574: l_component_type
16575: ,l_component_code
16603: --
16604: --
16605: ------------------------------------------------------------------------------------------------
16606: -- 4219869 Business Flow
16607: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
16608: -- Prior Entry. Currently, the following code is always generated.
16609: ------------------------------------------------------------------------------------------------
16610: XLA_AE_LINES_PKG.ValidateCurrentLine;
16611:
16606: -- 4219869 Business Flow
16607: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
16608: -- Prior Entry. Currently, the following code is always generated.
16609: ------------------------------------------------------------------------------------------------
16610: XLA_AE_LINES_PKG.ValidateCurrentLine;
16611:
16612: ------------------------------------------------------------------------------------
16613: -- 4219869 Business Flow
16614: -- Populated credit and debit amounts -- Need to generate this within IF
16612: ------------------------------------------------------------------------------------
16613: -- 4219869 Business Flow
16614: -- Populated credit and debit amounts -- Need to generate this within IF
16615: ------------------------------------------------------------------------------------
16616: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
16617:
16618: ----------------------------------------------------------------------------------
16619: -- 4219869 Business Flow
16620: -- Update journal entry status -- Need to generate this within IF
16644: -- To allow MPA report to determine if it should generate report process
16645: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
16646: ------------------------------------------------------------------------------------------
16647:
16648: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
16649: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
16650: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
16651: -- call ADRs
16652: -- Bug 4922099
16645: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
16646: ------------------------------------------------------------------------------------------
16647:
16648: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
16649: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
16650: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
16651: -- call ADRs
16652: -- Bug 4922099
16653: --
16669: , x_value_type_code => l_adr_value_type_code
16670: , p_side => 'NA'
16671: );
16672:
16673: xla_ae_lines_pkg.set_ccid(
16674: p_code_combination_id => l_ccid
16675: , p_value_type_code => l_adr_value_type_code
16676: , p_transaction_coa_id => l_adr_transaction_coa_id
16677: , p_accounting_coa_id => l_adr_accounting_coa_id
16692:
16693: --
16694: -- Update the line information that should be overwritten
16695: --
16696: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
16697: p_header_num => 1);
16698: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
16699:
16700: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16694: -- Update the line information that should be overwritten
16695: --
16696: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
16697: p_header_num => 1);
16698: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
16699:
16700: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16701:
16702: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
16696: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
16697: p_header_num => 1);
16698: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
16699:
16700: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16701:
16702: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
16703: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
16704: END IF;
16699:
16700: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16701:
16702: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
16703: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
16704: END IF;
16705:
16706: --
16707: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
16706: --
16707: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
16708: --
16709: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
16710: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
16711: ELSE
16712: ---------------------------------------------------------------------------------------------------
16713: -- 4262811a Switch Sign
16714: ---------------------------------------------------------------------------------------------------
16711: ELSE
16712: ---------------------------------------------------------------------------------------------------
16713: -- 4262811a Switch Sign
16714: ---------------------------------------------------------------------------------------------------
16715: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16716: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16717: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16718: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16719: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16712: ---------------------------------------------------------------------------------------------------
16713: -- 4262811a Switch Sign
16714: ---------------------------------------------------------------------------------------------------
16715: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16716: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16717: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16718: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16719: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16720: -- 5132302
16713: -- 4262811a Switch Sign
16714: ---------------------------------------------------------------------------------------------------
16715: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16716: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16717: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16718: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16719: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16720: -- 5132302
16721: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16714: ---------------------------------------------------------------------------------------------------
16715: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16716: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16717: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16718: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16719: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16720: -- 5132302
16721: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16722: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16715: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16716: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16717: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16718: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16719: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16720: -- 5132302
16721: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16722: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16723:
16717: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16718: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16719: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16720: -- 5132302
16721: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16722: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16723:
16724: END IF;
16725:
16718: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16719: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16720: -- 5132302
16721: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16722: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16723:
16724: END IF;
16725:
16726: -- 4955764
16723:
16724: END IF;
16725:
16726: -- 4955764
16727: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16728: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
16729:
16730:
16731: XLA_AE_LINES_PKG.ValidateCurrentLine;
16727: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16728: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
16729:
16730:
16731: XLA_AE_LINES_PKG.ValidateCurrentLine;
16732: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
16733:
16734: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
16735: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
16728: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
16729:
16730:
16731: XLA_AE_LINES_PKG.ValidateCurrentLine;
16732: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
16733:
16734: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
16735: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
16736: ,p_balance_type_code => l_balance_type_code);
16871: --
16872: -- bulk performance
16873: --
16874: l_balance_type_code VARCHAR2(1);
16875: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
16876: l_log_module VARCHAR2(240);
16877:
16878: --
16879: -- Upgrade strategy
16939: ') = 'TAX'
16940: THEN
16941:
16942: --
16943: XLA_AE_LINES_PKG.SetNewLine;
16944:
16945: p_balance_type_code := l_balance_type_code;
16946: -- set the flag so later we will know whether the gain loss line needs to be created
16947:
16951:
16952: --
16953: -- bulk performance
16954: --
16955: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
16956: p_header_num => 0); -- 4262811
16957: --
16958: -- set accounting line options
16959: --
16956: p_header_num => 0); -- 4262811
16957: --
16958: -- set accounting line options
16959: --
16960: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
16961: p_natural_side_code => 'C'
16962: , p_gain_or_loss_flag => 'N'
16963: , p_gl_transfer_mode_code => 'S'
16964: , p_acct_entry_type_code => 'A'
16970: --
16971: --
16972: -- set accounting line type info
16973: --
16974: xla_ae_lines_pkg.SetAcctLineType
16975: (p_component_type => l_component_type
16976: ,p_event_type_code => l_event_type_code
16977: ,p_line_definition_owner_code => l_line_definition_owner_code
16978: ,p_line_definition_code => l_line_definition_code
16984: ,p_event_class_code => l_event_class_code);
16985: --
16986: -- set accounting class
16987: --
16988: xla_ae_lines_pkg.SetAcctClass(
16989: p_accounting_class_code => 'TAX'
16990: , p_ae_header_id => l_ae_header_id
16991: );
16992:
16992:
16993: --
16994: -- set rounding class
16995: --
16996: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
16997: 'RECEIVABLE';
16998:
16999: --
17000: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
16996: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
16997: 'RECEIVABLE';
16998:
16999: --
17000: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17001: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17002: --
17003: -- bulk performance
17004: --
16997: 'RECEIVABLE';
16998:
16999: --
17000: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17001: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17002: --
17003: -- bulk performance
17004: --
17005: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17001: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17002: --
17003: -- bulk performance
17004: --
17005: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17006:
17007: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17008: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17009:
17003: -- bulk performance
17004: --
17005: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17006:
17007: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17008: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17009:
17010: -- 4955764
17011: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17007: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17008: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17009:
17010: -- 4955764
17011: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17012: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
17013:
17014: -- 4458381 Public Sector Enh
17015:
17045: l_rec_acct_attrs.array_char_value(12) := p_source_39;
17046: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
17047: l_rec_acct_attrs.array_num_value(13) := p_source_62;
17048:
17049: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17050: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17051:
17052: ---------------------------------------------------------------------------------------------------------------
17053: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17046: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
17047: l_rec_acct_attrs.array_num_value(13) := p_source_62;
17048:
17049: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17050: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17051:
17052: ---------------------------------------------------------------------------------------------------------------
17053: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17054: ---------------------------------------------------------------------------------------------------------------
17049: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17050: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17051:
17052: ---------------------------------------------------------------------------------------------------------------
17053: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17054: ---------------------------------------------------------------------------------------------------------------
17055: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17056:
17057: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17051:
17052: ---------------------------------------------------------------------------------------------------------------
17053: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17054: ---------------------------------------------------------------------------------------------------------------
17055: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17056:
17057: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17058: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17059:
17053: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17054: ---------------------------------------------------------------------------------------------------------------
17055: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17056:
17057: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17058: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17059:
17060: IF xla_accounting_cache_pkg.GetValueChar
17061: (p_source_code => 'LEDGER_CATEGORY_CODE'
17054: ---------------------------------------------------------------------------------------------------------------
17055: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17056:
17057: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17058: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17059:
17060: IF xla_accounting_cache_pkg.GetValueChar
17061: (p_source_code => 'LEDGER_CATEGORY_CODE'
17062: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
17065: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
17066: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
17067: )
17068: THEN
17069: xla_ae_lines_pkg.BflowUpgEntry
17070: (p_business_method_code => l_bflow_method_code
17071: ,p_business_class_code => l_bflow_class_code
17072: ,p_balance_type => l_balance_type_code);
17073: ELSE
17105: , x_value_type_code => l_adr_value_type_code
17106: , p_side => 'NA'
17107: );
17108:
17109: xla_ae_lines_pkg.set_ccid(
17110: p_code_combination_id => l_ccid
17111: , p_value_type_code => l_adr_value_type_code
17112: , p_transaction_coa_id => l_adr_transaction_coa_id
17113: , p_accounting_coa_id => l_adr_accounting_coa_id
17141: xla_accounting_err_pkg.build_message
17142: (p_appli_s_name => 'XLA'
17143: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
17144: ,p_token_1 => 'LINE_NUMBER'
17145: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
17146: ,p_token_2 => 'LINE_TYPE_NAME'
17147: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
17148: l_component_type
17149: ,l_component_code
17177: --
17178: --
17179: ------------------------------------------------------------------------------------------------
17180: -- 4219869 Business Flow
17181: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
17182: -- Prior Entry. Currently, the following code is always generated.
17183: ------------------------------------------------------------------------------------------------
17184: XLA_AE_LINES_PKG.ValidateCurrentLine;
17185:
17180: -- 4219869 Business Flow
17181: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
17182: -- Prior Entry. Currently, the following code is always generated.
17183: ------------------------------------------------------------------------------------------------
17184: XLA_AE_LINES_PKG.ValidateCurrentLine;
17185:
17186: ------------------------------------------------------------------------------------
17187: -- 4219869 Business Flow
17188: -- Populated credit and debit amounts -- Need to generate this within IF
17186: ------------------------------------------------------------------------------------
17187: -- 4219869 Business Flow
17188: -- Populated credit and debit amounts -- Need to generate this within IF
17189: ------------------------------------------------------------------------------------
17190: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17191:
17192: ----------------------------------------------------------------------------------
17193: -- 4219869 Business Flow
17194: -- Update journal entry status -- Need to generate this within IF
17218: -- To allow MPA report to determine if it should generate report process
17219: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
17220: ------------------------------------------------------------------------------------------
17221:
17222: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
17223: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
17224: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
17225: -- call ADRs
17226: -- Bug 4922099
17219: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
17220: ------------------------------------------------------------------------------------------
17221:
17222: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
17223: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
17224: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
17225: -- call ADRs
17226: -- Bug 4922099
17227: --
17243: , x_value_type_code => l_adr_value_type_code
17244: , p_side => 'NA'
17245: );
17246:
17247: xla_ae_lines_pkg.set_ccid(
17248: p_code_combination_id => l_ccid
17249: , p_value_type_code => l_adr_value_type_code
17250: , p_transaction_coa_id => l_adr_transaction_coa_id
17251: , p_accounting_coa_id => l_adr_accounting_coa_id
17266:
17267: --
17268: -- Update the line information that should be overwritten
17269: --
17270: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17271: p_header_num => 1);
17272: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17273:
17274: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17268: -- Update the line information that should be overwritten
17269: --
17270: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17271: p_header_num => 1);
17272: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17273:
17274: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17275:
17276: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17270: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17271: p_header_num => 1);
17272: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17273:
17274: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17275:
17276: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17277: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
17278: END IF;
17273:
17274: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17275:
17276: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17277: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
17278: END IF;
17279:
17280: --
17281: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
17280: --
17281: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
17282: --
17283: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
17284: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
17285: ELSE
17286: ---------------------------------------------------------------------------------------------------
17287: -- 4262811a Switch Sign
17288: ---------------------------------------------------------------------------------------------------
17285: ELSE
17286: ---------------------------------------------------------------------------------------------------
17287: -- 4262811a Switch Sign
17288: ---------------------------------------------------------------------------------------------------
17289: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17290: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17291: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17292: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17293: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17286: ---------------------------------------------------------------------------------------------------
17287: -- 4262811a Switch Sign
17288: ---------------------------------------------------------------------------------------------------
17289: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17290: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17291: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17292: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17293: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17294: -- 5132302
17287: -- 4262811a Switch Sign
17288: ---------------------------------------------------------------------------------------------------
17289: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17290: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17291: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17292: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17293: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17294: -- 5132302
17295: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17288: ---------------------------------------------------------------------------------------------------
17289: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17290: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17291: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17292: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17293: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17294: -- 5132302
17295: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17296: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17289: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17290: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17291: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17292: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17293: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17294: -- 5132302
17295: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17296: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17297:
17291: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17292: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17293: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17294: -- 5132302
17295: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17296: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17297:
17298: END IF;
17299:
17292: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17293: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17294: -- 5132302
17295: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17296: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17297:
17298: END IF;
17299:
17300: -- 4955764
17297:
17298: END IF;
17299:
17300: -- 4955764
17301: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17302: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17303:
17304:
17305: XLA_AE_LINES_PKG.ValidateCurrentLine;
17301: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17302: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17303:
17304:
17305: XLA_AE_LINES_PKG.ValidateCurrentLine;
17306: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17307:
17308: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
17309: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
17302: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17303:
17304:
17305: XLA_AE_LINES_PKG.ValidateCurrentLine;
17306: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17307:
17308: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
17309: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
17310: ,p_balance_type_code => l_balance_type_code);
17435: --
17436: -- bulk performance
17437: --
17438: l_balance_type_code VARCHAR2(1);
17439: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
17440: l_log_module VARCHAR2(240);
17441:
17442: --
17443: -- Upgrade strategy
17504: IF XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id = XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id OR
17505: l_balance_type_code <> 'B' THEN
17506:
17507: --
17508: XLA_AE_LINES_PKG.SetNewLine;
17509:
17510: p_balance_type_code := l_balance_type_code;
17511: -- set the flag so later we will know whether the gain loss line needs to be created
17512:
17516:
17517: --
17518: -- bulk performance
17519: --
17520: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
17521: p_header_num => 0); -- 4262811
17522: --
17523: -- set accounting line options
17524: --
17521: p_header_num => 0); -- 4262811
17522: --
17523: -- set accounting line options
17524: --
17525: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
17526: p_natural_side_code => 'G'
17527: , p_gain_or_loss_flag => 'N'
17528: , p_gl_transfer_mode_code => 'S'
17529: , p_acct_entry_type_code => 'A'
17535: --
17536: --
17537: -- set accounting line type info
17538: --
17539: xla_ae_lines_pkg.SetAcctLineType
17540: (p_component_type => l_component_type
17541: ,p_event_type_code => l_event_type_code
17542: ,p_line_definition_owner_code => l_line_definition_owner_code
17543: ,p_line_definition_code => l_line_definition_code
17549: ,p_event_class_code => l_event_class_code);
17550: --
17551: -- set accounting class
17552: --
17553: xla_ae_lines_pkg.SetAcctClass(
17554: p_accounting_class_code => 'EXCHANGE_GAIN_LOSS'
17555: , p_ae_header_id => l_ae_header_id
17556: );
17557:
17557:
17558: --
17559: -- set rounding class
17560: --
17561: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
17562: 'EXCHANGE_GAIN_LOSS';
17563:
17564: --
17565: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17561: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
17562: 'EXCHANGE_GAIN_LOSS';
17563:
17564: --
17565: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17566: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17567: --
17568: -- bulk performance
17569: --
17562: 'EXCHANGE_GAIN_LOSS';
17563:
17564: --
17565: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17566: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17567: --
17568: -- bulk performance
17569: --
17570: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17566: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17567: --
17568: -- bulk performance
17569: --
17570: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17571:
17572: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17573: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17574:
17568: -- bulk performance
17569: --
17570: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17571:
17572: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17573: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17574:
17575: -- 4955764
17576: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17572: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17573: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17574:
17575: -- 4955764
17576: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17577: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
17578:
17579: -- 4458381 Public Sector Enh
17580:
17600: l_rec_acct_attrs.array_char_value(7) := p_source_39;
17601: l_rec_acct_attrs.array_acct_attr_code(8) := 'TAX_LINE_REF_ID';
17602: l_rec_acct_attrs.array_num_value(8) := p_source_62;
17603:
17604: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17605: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17606:
17607: ---------------------------------------------------------------------------------------------------------------
17608: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17601: l_rec_acct_attrs.array_acct_attr_code(8) := 'TAX_LINE_REF_ID';
17602: l_rec_acct_attrs.array_num_value(8) := p_source_62;
17603:
17604: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17605: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17606:
17607: ---------------------------------------------------------------------------------------------------------------
17608: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17609: ---------------------------------------------------------------------------------------------------------------
17604: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17605: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17606:
17607: ---------------------------------------------------------------------------------------------------------------
17608: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17609: ---------------------------------------------------------------------------------------------------------------
17610: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17611:
17612: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17606:
17607: ---------------------------------------------------------------------------------------------------------------
17608: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17609: ---------------------------------------------------------------------------------------------------------------
17610: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17611:
17612: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17613: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17614:
17608: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17609: ---------------------------------------------------------------------------------------------------------------
17610: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17611:
17612: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17613: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17614:
17615: IF xla_accounting_cache_pkg.GetValueChar
17616: (p_source_code => 'LEDGER_CATEGORY_CODE'
17609: ---------------------------------------------------------------------------------------------------------------
17610: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17611:
17612: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17613: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17614:
17615: IF xla_accounting_cache_pkg.GetValueChar
17616: (p_source_code => 'LEDGER_CATEGORY_CODE'
17617: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
17620: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
17621: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
17622: )
17623: THEN
17624: xla_ae_lines_pkg.BflowUpgEntry
17625: (p_business_method_code => l_bflow_method_code
17626: ,p_business_class_code => l_bflow_class_code
17627: ,p_balance_type => l_balance_type_code);
17628: ELSE
17660: , x_value_type_code => l_adr_value_type_code
17661: , p_side => 'CREDIT'
17662: );
17663:
17664: xla_ae_lines_pkg.set_ccid(
17665: p_code_combination_id => l_ccid
17666: , p_value_type_code => l_adr_value_type_code
17667: , p_transaction_coa_id => l_adr_transaction_coa_id
17668: , p_accounting_coa_id => l_adr_accounting_coa_id
17686: , x_value_type_code => l_adr_value_type_code
17687: , p_side => 'DEBIT'
17688: );
17689:
17690: xla_ae_lines_pkg.set_ccid(
17691: p_code_combination_id => l_ccid
17692: , p_value_type_code => l_adr_value_type_code
17693: , p_transaction_coa_id => l_adr_transaction_coa_id
17694: , p_accounting_coa_id => l_adr_accounting_coa_id
17722: xla_accounting_err_pkg.build_message
17723: (p_appli_s_name => 'XLA'
17724: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
17725: ,p_token_1 => 'LINE_NUMBER'
17726: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
17727: ,p_token_2 => 'LINE_TYPE_NAME'
17728: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
17729: l_component_type
17730: ,l_component_code
17758: --
17759: --
17760: ------------------------------------------------------------------------------------------------
17761: -- 4219869 Business Flow
17762: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
17763: -- Prior Entry. Currently, the following code is always generated.
17764: ------------------------------------------------------------------------------------------------
17765: XLA_AE_LINES_PKG.ValidateCurrentLine;
17766:
17761: -- 4219869 Business Flow
17762: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
17763: -- Prior Entry. Currently, the following code is always generated.
17764: ------------------------------------------------------------------------------------------------
17765: XLA_AE_LINES_PKG.ValidateCurrentLine;
17766:
17767: ------------------------------------------------------------------------------------
17768: -- 4219869 Business Flow
17769: -- Populated credit and debit amounts -- Need to generate this within IF
17767: ------------------------------------------------------------------------------------
17768: -- 4219869 Business Flow
17769: -- Populated credit and debit amounts -- Need to generate this within IF
17770: ------------------------------------------------------------------------------------
17771: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17772:
17773: ----------------------------------------------------------------------------------
17774: -- 4219869 Business Flow
17775: -- Update journal entry status -- Need to generate this within IF
17799: -- To allow MPA report to determine if it should generate report process
17800: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
17801: ------------------------------------------------------------------------------------------
17802:
17803: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
17804: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
17805: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
17806: -- call ADRs
17807: -- Bug 4922099
17800: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
17801: ------------------------------------------------------------------------------------------
17802:
17803: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
17804: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
17805: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
17806: -- call ADRs
17807: -- Bug 4922099
17808: --
17824: , x_value_type_code => l_adr_value_type_code
17825: , p_side => 'CREDIT'
17826: );
17827:
17828: xla_ae_lines_pkg.set_ccid(
17829: p_code_combination_id => l_ccid
17830: , p_value_type_code => l_adr_value_type_code
17831: , p_transaction_coa_id => l_adr_transaction_coa_id
17832: , p_accounting_coa_id => l_adr_accounting_coa_id
17850: , x_value_type_code => l_adr_value_type_code
17851: , p_side => 'DEBIT'
17852: );
17853:
17854: xla_ae_lines_pkg.set_ccid(
17855: p_code_combination_id => l_ccid
17856: , p_value_type_code => l_adr_value_type_code
17857: , p_transaction_coa_id => l_adr_transaction_coa_id
17858: , p_accounting_coa_id => l_adr_accounting_coa_id
17873:
17874: --
17875: -- Update the line information that should be overwritten
17876: --
17877: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17878: p_header_num => 1);
17879: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17880:
17881: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17875: -- Update the line information that should be overwritten
17876: --
17877: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17878: p_header_num => 1);
17879: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17880:
17881: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17882:
17883: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17877: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17878: p_header_num => 1);
17879: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17880:
17881: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17882:
17883: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17884: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
17885: END IF;
17880:
17881: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17882:
17883: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17884: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
17885: END IF;
17886:
17887: --
17888: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
17887: --
17888: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
17889: --
17890: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
17891: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
17892: ELSE
17893: ---------------------------------------------------------------------------------------------------
17894: -- 4262811a Switch Sign
17895: ---------------------------------------------------------------------------------------------------
17892: ELSE
17893: ---------------------------------------------------------------------------------------------------
17894: -- 4262811a Switch Sign
17895: ---------------------------------------------------------------------------------------------------
17896: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17897: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17898: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17899: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17900: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17893: ---------------------------------------------------------------------------------------------------
17894: -- 4262811a Switch Sign
17895: ---------------------------------------------------------------------------------------------------
17896: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17897: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17898: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17899: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17900: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17901: -- 5132302
17894: -- 4262811a Switch Sign
17895: ---------------------------------------------------------------------------------------------------
17896: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17897: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17898: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17899: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17900: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17901: -- 5132302
17902: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17895: ---------------------------------------------------------------------------------------------------
17896: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17897: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17898: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17899: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17900: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17901: -- 5132302
17902: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17903: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17896: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17897: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17898: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17899: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17900: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17901: -- 5132302
17902: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17903: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17904:
17898: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17899: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17900: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17901: -- 5132302
17902: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17903: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17904:
17905: END IF;
17906:
17899: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17900: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17901: -- 5132302
17902: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17903: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17904:
17905: END IF;
17906:
17907: -- 4955764
17904:
17905: END IF;
17906:
17907: -- 4955764
17908: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17909: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17910:
17911:
17912: XLA_AE_LINES_PKG.ValidateCurrentLine;
17908: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17909: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17910:
17911:
17912: XLA_AE_LINES_PKG.ValidateCurrentLine;
17913: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17914:
17915: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
17916: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
17909: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17910:
17911:
17912: XLA_AE_LINES_PKG.ValidateCurrentLine;
17913: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17914:
17915: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
17916: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
17917: ,p_balance_type_code => l_balance_type_code);
18051: --
18052: -- bulk performance
18053: --
18054: l_balance_type_code VARCHAR2(1);
18055: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
18056: l_log_module VARCHAR2(240);
18057:
18058: --
18059: -- Upgrade strategy
18119: ') = 'ROUND'
18120: THEN
18121:
18122: --
18123: XLA_AE_LINES_PKG.SetNewLine;
18124:
18125: p_balance_type_code := l_balance_type_code;
18126: -- set the flag so later we will know whether the gain loss line needs to be created
18127:
18131:
18132: --
18133: -- bulk performance
18134: --
18135: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
18136: p_header_num => 0); -- 4262811
18137: --
18138: -- set accounting line options
18139: --
18136: p_header_num => 0); -- 4262811
18137: --
18138: -- set accounting line options
18139: --
18140: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
18141: p_natural_side_code => 'C'
18142: , p_gain_or_loss_flag => 'N'
18143: , p_gl_transfer_mode_code => 'S'
18144: , p_acct_entry_type_code => 'A'
18150: --
18151: --
18152: -- set accounting line type info
18153: --
18154: xla_ae_lines_pkg.SetAcctLineType
18155: (p_component_type => l_component_type
18156: ,p_event_type_code => l_event_type_code
18157: ,p_line_definition_owner_code => l_line_definition_owner_code
18158: ,p_line_definition_code => l_line_definition_code
18164: ,p_event_class_code => l_event_class_code);
18165: --
18166: -- set accounting class
18167: --
18168: xla_ae_lines_pkg.SetAcctClass(
18169: p_accounting_class_code => 'ROUNDING'
18170: , p_ae_header_id => l_ae_header_id
18171: );
18172:
18172:
18173: --
18174: -- set rounding class
18175: --
18176: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
18177: 'RECEIVABLE';
18178:
18179: --
18180: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
18176: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
18177: 'RECEIVABLE';
18178:
18179: --
18180: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
18181: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
18182: --
18183: -- bulk performance
18184: --
18177: 'RECEIVABLE';
18178:
18179: --
18180: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
18181: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
18182: --
18183: -- bulk performance
18184: --
18185: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
18181: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
18182: --
18183: -- bulk performance
18184: --
18185: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
18186:
18187: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
18188: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
18189:
18183: -- bulk performance
18184: --
18185: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
18186:
18187: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
18188: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
18189:
18190: -- 4955764
18191: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18187: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
18188: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
18189:
18190: -- 4955764
18191: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18192: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
18193:
18194: -- 4458381 Public Sector Enh
18195:
18225: l_rec_acct_attrs.array_char_value(12) := p_source_39;
18226: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
18227: l_rec_acct_attrs.array_num_value(13) := p_source_62;
18228:
18229: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18230: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18231:
18232: ---------------------------------------------------------------------------------------------------------------
18233: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18226: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
18227: l_rec_acct_attrs.array_num_value(13) := p_source_62;
18228:
18229: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18230: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18231:
18232: ---------------------------------------------------------------------------------------------------------------
18233: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18234: ---------------------------------------------------------------------------------------------------------------
18229: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18230: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18231:
18232: ---------------------------------------------------------------------------------------------------------------
18233: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18234: ---------------------------------------------------------------------------------------------------------------
18235: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18236:
18237: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18231:
18232: ---------------------------------------------------------------------------------------------------------------
18233: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18234: ---------------------------------------------------------------------------------------------------------------
18235: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18236:
18237: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18238: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18239:
18233: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18234: ---------------------------------------------------------------------------------------------------------------
18235: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18236:
18237: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18238: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18239:
18240: IF xla_accounting_cache_pkg.GetValueChar
18241: (p_source_code => 'LEDGER_CATEGORY_CODE'
18234: ---------------------------------------------------------------------------------------------------------------
18235: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18236:
18237: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18238: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18239:
18240: IF xla_accounting_cache_pkg.GetValueChar
18241: (p_source_code => 'LEDGER_CATEGORY_CODE'
18242: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
18245: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
18246: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
18247: )
18248: THEN
18249: xla_ae_lines_pkg.BflowUpgEntry
18250: (p_business_method_code => l_bflow_method_code
18251: ,p_business_class_code => l_bflow_class_code
18252: ,p_balance_type => l_balance_type_code);
18253: ELSE
18285: , x_value_type_code => l_adr_value_type_code
18286: , p_side => 'NA'
18287: );
18288:
18289: xla_ae_lines_pkg.set_ccid(
18290: p_code_combination_id => l_ccid
18291: , p_value_type_code => l_adr_value_type_code
18292: , p_transaction_coa_id => l_adr_transaction_coa_id
18293: , p_accounting_coa_id => l_adr_accounting_coa_id
18321: xla_accounting_err_pkg.build_message
18322: (p_appli_s_name => 'XLA'
18323: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
18324: ,p_token_1 => 'LINE_NUMBER'
18325: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
18326: ,p_token_2 => 'LINE_TYPE_NAME'
18327: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
18328: l_component_type
18329: ,l_component_code
18357: --
18358: --
18359: ------------------------------------------------------------------------------------------------
18360: -- 4219869 Business Flow
18361: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
18362: -- Prior Entry. Currently, the following code is always generated.
18363: ------------------------------------------------------------------------------------------------
18364: XLA_AE_LINES_PKG.ValidateCurrentLine;
18365:
18360: -- 4219869 Business Flow
18361: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
18362: -- Prior Entry. Currently, the following code is always generated.
18363: ------------------------------------------------------------------------------------------------
18364: XLA_AE_LINES_PKG.ValidateCurrentLine;
18365:
18366: ------------------------------------------------------------------------------------
18367: -- 4219869 Business Flow
18368: -- Populated credit and debit amounts -- Need to generate this within IF
18366: ------------------------------------------------------------------------------------
18367: -- 4219869 Business Flow
18368: -- Populated credit and debit amounts -- Need to generate this within IF
18369: ------------------------------------------------------------------------------------
18370: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
18371:
18372: ----------------------------------------------------------------------------------
18373: -- 4219869 Business Flow
18374: -- Update journal entry status -- Need to generate this within IF
18398: -- To allow MPA report to determine if it should generate report process
18399: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
18400: ------------------------------------------------------------------------------------------
18401:
18402: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
18403: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
18404: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
18405: -- call ADRs
18406: -- Bug 4922099
18399: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
18400: ------------------------------------------------------------------------------------------
18401:
18402: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
18403: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
18404: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
18405: -- call ADRs
18406: -- Bug 4922099
18407: --
18423: , x_value_type_code => l_adr_value_type_code
18424: , p_side => 'NA'
18425: );
18426:
18427: xla_ae_lines_pkg.set_ccid(
18428: p_code_combination_id => l_ccid
18429: , p_value_type_code => l_adr_value_type_code
18430: , p_transaction_coa_id => l_adr_transaction_coa_id
18431: , p_accounting_coa_id => l_adr_accounting_coa_id
18446:
18447: --
18448: -- Update the line information that should be overwritten
18449: --
18450: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
18451: p_header_num => 1);
18452: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
18453:
18454: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18448: -- Update the line information that should be overwritten
18449: --
18450: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
18451: p_header_num => 1);
18452: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
18453:
18454: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18455:
18456: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
18450: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
18451: p_header_num => 1);
18452: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
18453:
18454: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18455:
18456: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
18457: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
18458: END IF;
18453:
18454: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18455:
18456: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
18457: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
18458: END IF;
18459:
18460: --
18461: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
18460: --
18461: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
18462: --
18463: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
18464: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
18465: ELSE
18466: ---------------------------------------------------------------------------------------------------
18467: -- 4262811a Switch Sign
18468: ---------------------------------------------------------------------------------------------------
18465: ELSE
18466: ---------------------------------------------------------------------------------------------------
18467: -- 4262811a Switch Sign
18468: ---------------------------------------------------------------------------------------------------
18469: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18470: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18471: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18472: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18473: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18466: ---------------------------------------------------------------------------------------------------
18467: -- 4262811a Switch Sign
18468: ---------------------------------------------------------------------------------------------------
18469: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18470: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18471: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18472: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18473: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18474: -- 5132302
18467: -- 4262811a Switch Sign
18468: ---------------------------------------------------------------------------------------------------
18469: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18470: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18471: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18472: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18473: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18474: -- 5132302
18475: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18468: ---------------------------------------------------------------------------------------------------
18469: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18470: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18471: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18472: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18473: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18474: -- 5132302
18475: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18476: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18469: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18470: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18471: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18472: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18473: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18474: -- 5132302
18475: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18476: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18477:
18471: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18472: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18473: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18474: -- 5132302
18475: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18476: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18477:
18478: END IF;
18479:
18472: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18473: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18474: -- 5132302
18475: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18476: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18477:
18478: END IF;
18479:
18480: -- 4955764
18477:
18478: END IF;
18479:
18480: -- 4955764
18481: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18482: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
18483:
18484:
18485: XLA_AE_LINES_PKG.ValidateCurrentLine;
18481: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18482: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
18483:
18484:
18485: XLA_AE_LINES_PKG.ValidateCurrentLine;
18486: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
18487:
18488: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
18489: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
18482: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
18483:
18484:
18485: XLA_AE_LINES_PKG.ValidateCurrentLine;
18486: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
18487:
18488: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
18489: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
18490: ,p_balance_type_code => l_balance_type_code);
18625: --
18626: -- bulk performance
18627: --
18628: l_balance_type_code VARCHAR2(1);
18629: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
18630: l_log_module VARCHAR2(240);
18631:
18632: --
18633: -- Upgrade strategy
18693: ') = 'UNBILL'
18694: THEN
18695:
18696: --
18697: XLA_AE_LINES_PKG.SetNewLine;
18698:
18699: p_balance_type_code := l_balance_type_code;
18700: -- set the flag so later we will know whether the gain loss line needs to be created
18701:
18705:
18706: --
18707: -- bulk performance
18708: --
18709: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
18710: p_header_num => 0); -- 4262811
18711: --
18712: -- set accounting line options
18713: --
18710: p_header_num => 0); -- 4262811
18711: --
18712: -- set accounting line options
18713: --
18714: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
18715: p_natural_side_code => 'C'
18716: , p_gain_or_loss_flag => 'N'
18717: , p_gl_transfer_mode_code => 'S'
18718: , p_acct_entry_type_code => 'A'
18724: --
18725: --
18726: -- set accounting line type info
18727: --
18728: xla_ae_lines_pkg.SetAcctLineType
18729: (p_component_type => l_component_type
18730: ,p_event_type_code => l_event_type_code
18731: ,p_line_definition_owner_code => l_line_definition_owner_code
18732: ,p_line_definition_code => l_line_definition_code
18738: ,p_event_class_code => l_event_class_code);
18739: --
18740: -- set accounting class
18741: --
18742: xla_ae_lines_pkg.SetAcctClass(
18743: p_accounting_class_code => 'UNBILL'
18744: , p_ae_header_id => l_ae_header_id
18745: );
18746:
18746:
18747: --
18748: -- set rounding class
18749: --
18750: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
18751: 'RECEIVABLE';
18752:
18753: --
18754: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
18750: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
18751: 'RECEIVABLE';
18752:
18753: --
18754: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
18755: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
18756: --
18757: -- bulk performance
18758: --
18751: 'RECEIVABLE';
18752:
18753: --
18754: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
18755: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
18756: --
18757: -- bulk performance
18758: --
18759: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
18755: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
18756: --
18757: -- bulk performance
18758: --
18759: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
18760:
18761: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
18762: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
18763:
18757: -- bulk performance
18758: --
18759: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
18760:
18761: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
18762: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
18763:
18764: -- 4955764
18765: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18761: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
18762: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
18763:
18764: -- 4955764
18765: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18766: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
18767:
18768: -- 4458381 Public Sector Enh
18769:
18799: l_rec_acct_attrs.array_char_value(12) := p_source_39;
18800: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
18801: l_rec_acct_attrs.array_num_value(13) := p_source_62;
18802:
18803: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18804: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18805:
18806: ---------------------------------------------------------------------------------------------------------------
18807: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18800: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
18801: l_rec_acct_attrs.array_num_value(13) := p_source_62;
18802:
18803: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18804: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18805:
18806: ---------------------------------------------------------------------------------------------------------------
18807: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18808: ---------------------------------------------------------------------------------------------------------------
18803: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18804: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18805:
18806: ---------------------------------------------------------------------------------------------------------------
18807: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18808: ---------------------------------------------------------------------------------------------------------------
18809: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18810:
18811: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18805:
18806: ---------------------------------------------------------------------------------------------------------------
18807: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18808: ---------------------------------------------------------------------------------------------------------------
18809: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18810:
18811: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18812: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18813:
18807: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18808: ---------------------------------------------------------------------------------------------------------------
18809: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18810:
18811: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18812: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18813:
18814: IF xla_accounting_cache_pkg.GetValueChar
18815: (p_source_code => 'LEDGER_CATEGORY_CODE'
18808: ---------------------------------------------------------------------------------------------------------------
18809: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18810:
18811: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18812: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18813:
18814: IF xla_accounting_cache_pkg.GetValueChar
18815: (p_source_code => 'LEDGER_CATEGORY_CODE'
18816: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
18819: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
18820: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
18821: )
18822: THEN
18823: xla_ae_lines_pkg.BflowUpgEntry
18824: (p_business_method_code => l_bflow_method_code
18825: ,p_business_class_code => l_bflow_class_code
18826: ,p_balance_type => l_balance_type_code);
18827: ELSE
18859: , x_value_type_code => l_adr_value_type_code
18860: , p_side => 'NA'
18861: );
18862:
18863: xla_ae_lines_pkg.set_ccid(
18864: p_code_combination_id => l_ccid
18865: , p_value_type_code => l_adr_value_type_code
18866: , p_transaction_coa_id => l_adr_transaction_coa_id
18867: , p_accounting_coa_id => l_adr_accounting_coa_id
18895: xla_accounting_err_pkg.build_message
18896: (p_appli_s_name => 'XLA'
18897: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
18898: ,p_token_1 => 'LINE_NUMBER'
18899: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
18900: ,p_token_2 => 'LINE_TYPE_NAME'
18901: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
18902: l_component_type
18903: ,l_component_code
18931: --
18932: --
18933: ------------------------------------------------------------------------------------------------
18934: -- 4219869 Business Flow
18935: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
18936: -- Prior Entry. Currently, the following code is always generated.
18937: ------------------------------------------------------------------------------------------------
18938: XLA_AE_LINES_PKG.ValidateCurrentLine;
18939:
18934: -- 4219869 Business Flow
18935: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
18936: -- Prior Entry. Currently, the following code is always generated.
18937: ------------------------------------------------------------------------------------------------
18938: XLA_AE_LINES_PKG.ValidateCurrentLine;
18939:
18940: ------------------------------------------------------------------------------------
18941: -- 4219869 Business Flow
18942: -- Populated credit and debit amounts -- Need to generate this within IF
18940: ------------------------------------------------------------------------------------
18941: -- 4219869 Business Flow
18942: -- Populated credit and debit amounts -- Need to generate this within IF
18943: ------------------------------------------------------------------------------------
18944: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
18945:
18946: ----------------------------------------------------------------------------------
18947: -- 4219869 Business Flow
18948: -- Update journal entry status -- Need to generate this within IF
18972: -- To allow MPA report to determine if it should generate report process
18973: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
18974: ------------------------------------------------------------------------------------------
18975:
18976: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
18977: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
18978: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
18979: -- call ADRs
18980: -- Bug 4922099
18973: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
18974: ------------------------------------------------------------------------------------------
18975:
18976: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
18977: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
18978: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
18979: -- call ADRs
18980: -- Bug 4922099
18981: --
18997: , x_value_type_code => l_adr_value_type_code
18998: , p_side => 'NA'
18999: );
19000:
19001: xla_ae_lines_pkg.set_ccid(
19002: p_code_combination_id => l_ccid
19003: , p_value_type_code => l_adr_value_type_code
19004: , p_transaction_coa_id => l_adr_transaction_coa_id
19005: , p_accounting_coa_id => l_adr_accounting_coa_id
19020:
19021: --
19022: -- Update the line information that should be overwritten
19023: --
19024: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19025: p_header_num => 1);
19026: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19027:
19028: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19022: -- Update the line information that should be overwritten
19023: --
19024: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19025: p_header_num => 1);
19026: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19027:
19028: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19029:
19030: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19024: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19025: p_header_num => 1);
19026: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19027:
19028: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19029:
19030: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19031: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
19032: END IF;
19027:
19028: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19029:
19030: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19031: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
19032: END IF;
19033:
19034: --
19035: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
19034: --
19035: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
19036: --
19037: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
19038: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
19039: ELSE
19040: ---------------------------------------------------------------------------------------------------
19041: -- 4262811a Switch Sign
19042: ---------------------------------------------------------------------------------------------------
19039: ELSE
19040: ---------------------------------------------------------------------------------------------------
19041: -- 4262811a Switch Sign
19042: ---------------------------------------------------------------------------------------------------
19043: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19044: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19046: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19040: ---------------------------------------------------------------------------------------------------
19041: -- 4262811a Switch Sign
19042: ---------------------------------------------------------------------------------------------------
19043: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19044: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19046: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19048: -- 5132302
19041: -- 4262811a Switch Sign
19042: ---------------------------------------------------------------------------------------------------
19043: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19044: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19046: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19048: -- 5132302
19049: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19042: ---------------------------------------------------------------------------------------------------
19043: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19044: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19046: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19048: -- 5132302
19049: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19050: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19043: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19044: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19046: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19048: -- 5132302
19049: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19050: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19051:
19045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19046: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19048: -- 5132302
19049: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19050: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19051:
19052: END IF;
19053:
19046: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19048: -- 5132302
19049: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19050: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19051:
19052: END IF;
19053:
19054: -- 4955764
19051:
19052: END IF;
19053:
19054: -- 4955764
19055: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19056: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19057:
19058:
19059: XLA_AE_LINES_PKG.ValidateCurrentLine;
19055: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19056: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19057:
19058:
19059: XLA_AE_LINES_PKG.ValidateCurrentLine;
19060: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19061:
19062: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
19063: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
19056: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19057:
19058:
19059: XLA_AE_LINES_PKG.ValidateCurrentLine;
19060: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19061:
19062: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
19063: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
19064: ,p_balance_type_code => l_balance_type_code);
19201: --
19202: -- bulk performance
19203: --
19204: l_balance_type_code VARCHAR2(1);
19205: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
19206: l_log_module VARCHAR2(240);
19207:
19208: --
19209: -- Upgrade strategy
19269: ') = 'UNEARN'
19270: THEN
19271:
19272: --
19273: XLA_AE_LINES_PKG.SetNewLine;
19274:
19275: p_balance_type_code := l_balance_type_code;
19276: -- set the flag so later we will know whether the gain loss line needs to be created
19277:
19281:
19282: --
19283: -- bulk performance
19284: --
19285: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
19286: p_header_num => 0); -- 4262811
19287: --
19288: -- set accounting line options
19289: --
19286: p_header_num => 0); -- 4262811
19287: --
19288: -- set accounting line options
19289: --
19290: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
19291: p_natural_side_code => 'C'
19292: , p_gain_or_loss_flag => 'N'
19293: , p_gl_transfer_mode_code => 'S'
19294: , p_acct_entry_type_code => 'A'
19300: --
19301: --
19302: -- set accounting line type info
19303: --
19304: xla_ae_lines_pkg.SetAcctLineType
19305: (p_component_type => l_component_type
19306: ,p_event_type_code => l_event_type_code
19307: ,p_line_definition_owner_code => l_line_definition_owner_code
19308: ,p_line_definition_code => l_line_definition_code
19314: ,p_event_class_code => l_event_class_code);
19315: --
19316: -- set accounting class
19317: --
19318: xla_ae_lines_pkg.SetAcctClass(
19319: p_accounting_class_code => 'UNEARNED_REVENUE'
19320: , p_ae_header_id => l_ae_header_id
19321: );
19322:
19322:
19323: --
19324: -- set rounding class
19325: --
19326: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
19327: 'RECEIVABLE';
19328:
19329: --
19330: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19326: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
19327: 'RECEIVABLE';
19328:
19329: --
19330: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19331: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19332: --
19333: -- bulk performance
19334: --
19327: 'RECEIVABLE';
19328:
19329: --
19330: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19331: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19332: --
19333: -- bulk performance
19334: --
19335: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19331: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19332: --
19333: -- bulk performance
19334: --
19335: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19336:
19337: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19338: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19339:
19333: -- bulk performance
19334: --
19335: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19336:
19337: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19338: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19339:
19340: -- 4955764
19341: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19337: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19338: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19339:
19340: -- 4955764
19341: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19342: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
19343:
19344: -- 4458381 Public Sector Enh
19345:
19375: l_rec_acct_attrs.array_char_value(12) := p_source_39;
19376: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
19377: l_rec_acct_attrs.array_num_value(13) := p_source_62;
19378:
19379: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19380: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19381:
19382: ---------------------------------------------------------------------------------------------------------------
19383: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19376: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
19377: l_rec_acct_attrs.array_num_value(13) := p_source_62;
19378:
19379: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19380: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19381:
19382: ---------------------------------------------------------------------------------------------------------------
19383: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19384: ---------------------------------------------------------------------------------------------------------------
19379: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19380: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19381:
19382: ---------------------------------------------------------------------------------------------------------------
19383: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19384: ---------------------------------------------------------------------------------------------------------------
19385: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19386:
19387: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19381:
19382: ---------------------------------------------------------------------------------------------------------------
19383: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19384: ---------------------------------------------------------------------------------------------------------------
19385: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19386:
19387: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19388: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19389:
19383: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19384: ---------------------------------------------------------------------------------------------------------------
19385: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19386:
19387: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19388: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19389:
19390: IF xla_accounting_cache_pkg.GetValueChar
19391: (p_source_code => 'LEDGER_CATEGORY_CODE'
19384: ---------------------------------------------------------------------------------------------------------------
19385: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19386:
19387: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19388: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19389:
19390: IF xla_accounting_cache_pkg.GetValueChar
19391: (p_source_code => 'LEDGER_CATEGORY_CODE'
19392: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
19395: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
19396: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
19397: )
19398: THEN
19399: xla_ae_lines_pkg.BflowUpgEntry
19400: (p_business_method_code => l_bflow_method_code
19401: ,p_business_class_code => l_bflow_class_code
19402: ,p_balance_type => l_balance_type_code);
19403: ELSE
19409: -- call analytical criteria
19410: --
19411:
19412:
19413: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
19414: xla_ae_lines_pkg.SetAnalyticalCriteria(
19415: p_analytical_criterion_name => 'Project Number'
19416: , p_analytical_criterion_owner => 'S'
19417: , p_analytical_criterion_code => 'PROJECT_NUMBER'
19410: --
19411:
19412:
19413: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
19414: xla_ae_lines_pkg.SetAnalyticalCriteria(
19415: p_analytical_criterion_name => 'Project Number'
19416: , p_analytical_criterion_owner => 'S'
19417: , p_analytical_criterion_code => 'PROJECT_NUMBER'
19418: , p_amb_context_code => 'DEFAULT'
19453: , x_value_type_code => l_adr_value_type_code
19454: , p_side => 'NA'
19455: );
19456:
19457: xla_ae_lines_pkg.set_ccid(
19458: p_code_combination_id => l_ccid
19459: , p_value_type_code => l_adr_value_type_code
19460: , p_transaction_coa_id => l_adr_transaction_coa_id
19461: , p_accounting_coa_id => l_adr_accounting_coa_id
19489: xla_accounting_err_pkg.build_message
19490: (p_appli_s_name => 'XLA'
19491: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
19492: ,p_token_1 => 'LINE_NUMBER'
19493: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
19494: ,p_token_2 => 'LINE_TYPE_NAME'
19495: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
19496: l_component_type
19497: ,l_component_code
19525: --
19526: --
19527: ------------------------------------------------------------------------------------------------
19528: -- 4219869 Business Flow
19529: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
19530: -- Prior Entry. Currently, the following code is always generated.
19531: ------------------------------------------------------------------------------------------------
19532: XLA_AE_LINES_PKG.ValidateCurrentLine;
19533:
19528: -- 4219869 Business Flow
19529: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
19530: -- Prior Entry. Currently, the following code is always generated.
19531: ------------------------------------------------------------------------------------------------
19532: XLA_AE_LINES_PKG.ValidateCurrentLine;
19533:
19534: ------------------------------------------------------------------------------------
19535: -- 4219869 Business Flow
19536: -- Populated credit and debit amounts -- Need to generate this within IF
19534: ------------------------------------------------------------------------------------
19535: -- 4219869 Business Flow
19536: -- Populated credit and debit amounts -- Need to generate this within IF
19537: ------------------------------------------------------------------------------------
19538: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19539:
19540: ----------------------------------------------------------------------------------
19541: -- 4219869 Business Flow
19542: -- Update journal entry status -- Need to generate this within IF
19566: -- To allow MPA report to determine if it should generate report process
19567: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
19568: ------------------------------------------------------------------------------------------
19569:
19570: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
19571: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
19572: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
19573: -- call ADRs
19574: -- Bug 4922099
19567: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
19568: ------------------------------------------------------------------------------------------
19569:
19570: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
19571: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
19572: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
19573: -- call ADRs
19574: -- Bug 4922099
19575: --
19591: , x_value_type_code => l_adr_value_type_code
19592: , p_side => 'NA'
19593: );
19594:
19595: xla_ae_lines_pkg.set_ccid(
19596: p_code_combination_id => l_ccid
19597: , p_value_type_code => l_adr_value_type_code
19598: , p_transaction_coa_id => l_adr_transaction_coa_id
19599: , p_accounting_coa_id => l_adr_accounting_coa_id
19614:
19615: --
19616: -- Update the line information that should be overwritten
19617: --
19618: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19619: p_header_num => 1);
19620: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19621:
19622: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19616: -- Update the line information that should be overwritten
19617: --
19618: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19619: p_header_num => 1);
19620: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19621:
19622: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19623:
19624: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19618: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19619: p_header_num => 1);
19620: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19621:
19622: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19623:
19624: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19625: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
19626: END IF;
19621:
19622: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19623:
19624: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19625: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
19626: END IF;
19627:
19628: --
19629: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
19628: --
19629: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
19630: --
19631: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
19632: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
19633: ELSE
19634: ---------------------------------------------------------------------------------------------------
19635: -- 4262811a Switch Sign
19636: ---------------------------------------------------------------------------------------------------
19633: ELSE
19634: ---------------------------------------------------------------------------------------------------
19635: -- 4262811a Switch Sign
19636: ---------------------------------------------------------------------------------------------------
19637: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19638: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19639: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19640: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19641: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19634: ---------------------------------------------------------------------------------------------------
19635: -- 4262811a Switch Sign
19636: ---------------------------------------------------------------------------------------------------
19637: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19638: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19639: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19640: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19641: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19642: -- 5132302
19635: -- 4262811a Switch Sign
19636: ---------------------------------------------------------------------------------------------------
19637: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19638: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19639: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19640: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19641: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19642: -- 5132302
19643: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19636: ---------------------------------------------------------------------------------------------------
19637: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19638: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19639: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19640: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19641: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19642: -- 5132302
19643: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19644: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19637: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19638: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19639: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19640: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19641: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19642: -- 5132302
19643: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19644: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19645:
19639: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19640: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19641: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19642: -- 5132302
19643: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19644: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19645:
19646: END IF;
19647:
19640: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19641: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19642: -- 5132302
19643: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19644: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19645:
19646: END IF;
19647:
19648: -- 4955764
19645:
19646: END IF;
19647:
19648: -- 4955764
19649: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19650: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19651:
19652:
19653: XLA_AE_LINES_PKG.ValidateCurrentLine;
19649: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19650: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19651:
19652:
19653: XLA_AE_LINES_PKG.ValidateCurrentLine;
19654: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19655:
19656: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
19657: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
19650: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19651:
19652:
19653: XLA_AE_LINES_PKG.ValidateCurrentLine;
19654: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19655:
19656: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
19657: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
19658: ,p_balance_type_code => l_balance_type_code);
19816: --
19817: -- bulk performance
19818: --
19819: l_balance_type_code VARCHAR2(1);
19820: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
19821: l_log_module VARCHAR2(240);
19822:
19823: --
19824: -- Upgrade strategy
19886: ') = 'COLLECTION'
19887: THEN
19888:
19889: --
19890: XLA_AE_LINES_PKG.SetNewLine;
19891:
19892: p_balance_type_code := l_balance_type_code;
19893: -- set the flag so later we will know whether the gain loss line needs to be created
19894:
19898:
19899: --
19900: -- bulk performance
19901: --
19902: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
19903: p_header_num => 0); -- 4262811
19904: --
19905: -- set accounting line options
19906: --
19903: p_header_num => 0); -- 4262811
19904: --
19905: -- set accounting line options
19906: --
19907: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
19908: p_natural_side_code => 'D'
19909: , p_gain_or_loss_flag => 'N'
19910: , p_gl_transfer_mode_code => 'S'
19911: , p_acct_entry_type_code => 'A'
19917: --
19918: --
19919: -- set accounting line type info
19920: --
19921: xla_ae_lines_pkg.SetAcctLineType
19922: (p_component_type => l_component_type
19923: ,p_event_type_code => l_event_type_code
19924: ,p_line_definition_owner_code => l_line_definition_owner_code
19925: ,p_line_definition_code => l_line_definition_code
19931: ,p_event_class_code => l_event_class_code);
19932: --
19933: -- set accounting class
19934: --
19935: xla_ae_lines_pkg.SetAcctClass(
19936: p_accounting_class_code => 'BANK_CHG'
19937: , p_ae_header_id => l_ae_header_id
19938: );
19939:
19939:
19940: --
19941: -- set rounding class
19942: --
19943: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
19944: 'BANK_CHG';
19945:
19946: --
19947: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19943: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
19944: 'BANK_CHG';
19945:
19946: --
19947: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19948: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19949: --
19950: -- bulk performance
19951: --
19944: 'BANK_CHG';
19945:
19946: --
19947: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19948: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19949: --
19950: -- bulk performance
19951: --
19952: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19948: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19949: --
19950: -- bulk performance
19951: --
19952: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19953:
19954: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19955: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19956:
19950: -- bulk performance
19951: --
19952: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19953:
19954: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19955: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19956:
19957: -- 4955764
19958: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19954: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19955: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19956:
19957: -- 4955764
19958: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19959: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
19960:
19961: -- 4458381 Public Sector Enh
19962:
20020: l_rec_acct_attrs.array_char_value(21) := p_source_84;
20021: l_rec_acct_attrs.array_acct_attr_code(22) := 'TRX_ROUNDING_REF';
20022: l_rec_acct_attrs.array_num_value(22) := to_char(p_source_82);
20023:
20024: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20025: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20026:
20027: ---------------------------------------------------------------------------------------------------------------
20028: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20021: l_rec_acct_attrs.array_acct_attr_code(22) := 'TRX_ROUNDING_REF';
20022: l_rec_acct_attrs.array_num_value(22) := to_char(p_source_82);
20023:
20024: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20025: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20026:
20027: ---------------------------------------------------------------------------------------------------------------
20028: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20029: ---------------------------------------------------------------------------------------------------------------
20024: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20025: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20026:
20027: ---------------------------------------------------------------------------------------------------------------
20028: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20029: ---------------------------------------------------------------------------------------------------------------
20030: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20031:
20032: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20026:
20027: ---------------------------------------------------------------------------------------------------------------
20028: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20029: ---------------------------------------------------------------------------------------------------------------
20030: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20031:
20032: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20033: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20034:
20028: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20029: ---------------------------------------------------------------------------------------------------------------
20030: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20031:
20032: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20033: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20034:
20035: IF xla_accounting_cache_pkg.GetValueChar
20036: (p_source_code => 'LEDGER_CATEGORY_CODE'
20029: ---------------------------------------------------------------------------------------------------------------
20030: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20031:
20032: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20033: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20034:
20035: IF xla_accounting_cache_pkg.GetValueChar
20036: (p_source_code => 'LEDGER_CATEGORY_CODE'
20037: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
20040: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
20041: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
20042: )
20043: THEN
20044: xla_ae_lines_pkg.BflowUpgEntry
20045: (p_business_method_code => l_bflow_method_code
20046: ,p_business_class_code => l_bflow_class_code
20047: ,p_balance_type => l_balance_type_code);
20048: ELSE
20057: --
20058: -- call description
20059: --
20060:
20061: xla_ae_lines_pkg.SetLineDescription(
20062: p_ae_header_id => l_ae_header_id
20063: ,p_description => Description_2 (
20064: p_application_id => p_application_id
20065: , p_ae_header_id => l_ae_header_id
20094: , x_value_type_code => l_adr_value_type_code
20095: , p_side => 'NA'
20096: );
20097:
20098: xla_ae_lines_pkg.set_ccid(
20099: p_code_combination_id => l_ccid
20100: , p_value_type_code => l_adr_value_type_code
20101: , p_transaction_coa_id => l_adr_transaction_coa_id
20102: , p_accounting_coa_id => l_adr_accounting_coa_id
20130: xla_accounting_err_pkg.build_message
20131: (p_appli_s_name => 'XLA'
20132: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
20133: ,p_token_1 => 'LINE_NUMBER'
20134: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
20135: ,p_token_2 => 'LINE_TYPE_NAME'
20136: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
20137: l_component_type
20138: ,l_component_code
20166: --
20167: --
20168: ------------------------------------------------------------------------------------------------
20169: -- 4219869 Business Flow
20170: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
20171: -- Prior Entry. Currently, the following code is always generated.
20172: ------------------------------------------------------------------------------------------------
20173: XLA_AE_LINES_PKG.ValidateCurrentLine;
20174:
20169: -- 4219869 Business Flow
20170: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
20171: -- Prior Entry. Currently, the following code is always generated.
20172: ------------------------------------------------------------------------------------------------
20173: XLA_AE_LINES_PKG.ValidateCurrentLine;
20174:
20175: ------------------------------------------------------------------------------------
20176: -- 4219869 Business Flow
20177: -- Populated credit and debit amounts -- Need to generate this within IF
20175: ------------------------------------------------------------------------------------
20176: -- 4219869 Business Flow
20177: -- Populated credit and debit amounts -- Need to generate this within IF
20178: ------------------------------------------------------------------------------------
20179: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
20180:
20181: ----------------------------------------------------------------------------------
20182: -- 4219869 Business Flow
20183: -- Update journal entry status -- Need to generate this within IF
20207: -- To allow MPA report to determine if it should generate report process
20208: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
20209: ------------------------------------------------------------------------------------------
20210:
20211: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
20212: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
20213: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
20214: -- call ADRs
20215: -- Bug 4922099
20208: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
20209: ------------------------------------------------------------------------------------------
20210:
20211: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
20212: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
20213: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
20214: -- call ADRs
20215: -- Bug 4922099
20216: --
20232: , x_value_type_code => l_adr_value_type_code
20233: , p_side => 'NA'
20234: );
20235:
20236: xla_ae_lines_pkg.set_ccid(
20237: p_code_combination_id => l_ccid
20238: , p_value_type_code => l_adr_value_type_code
20239: , p_transaction_coa_id => l_adr_transaction_coa_id
20240: , p_accounting_coa_id => l_adr_accounting_coa_id
20255:
20256: --
20257: -- Update the line information that should be overwritten
20258: --
20259: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
20260: p_header_num => 1);
20261: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
20262:
20263: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20257: -- Update the line information that should be overwritten
20258: --
20259: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
20260: p_header_num => 1);
20261: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
20262:
20263: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20264:
20265: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
20259: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
20260: p_header_num => 1);
20261: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
20262:
20263: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20264:
20265: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
20266: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
20267: END IF;
20262:
20263: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20264:
20265: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
20266: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
20267: END IF;
20268:
20269: --
20270: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
20269: --
20270: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
20271: --
20272: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
20273: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
20274: ELSE
20275: ---------------------------------------------------------------------------------------------------
20276: -- 4262811a Switch Sign
20277: ---------------------------------------------------------------------------------------------------
20274: ELSE
20275: ---------------------------------------------------------------------------------------------------
20276: -- 4262811a Switch Sign
20277: ---------------------------------------------------------------------------------------------------
20278: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20279: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20280: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20281: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20282: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20275: ---------------------------------------------------------------------------------------------------
20276: -- 4262811a Switch Sign
20277: ---------------------------------------------------------------------------------------------------
20278: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20279: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20280: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20281: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20282: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20283: -- 5132302
20276: -- 4262811a Switch Sign
20277: ---------------------------------------------------------------------------------------------------
20278: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20279: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20280: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20281: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20282: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20283: -- 5132302
20284: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20277: ---------------------------------------------------------------------------------------------------
20278: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20279: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20280: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20281: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20282: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20283: -- 5132302
20284: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20285: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20278: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20279: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20280: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20281: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20282: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20283: -- 5132302
20284: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20285: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20286:
20280: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20281: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20282: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20283: -- 5132302
20284: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20285: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20286:
20287: END IF;
20288:
20281: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20282: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20283: -- 5132302
20284: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20285: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20286:
20287: END IF;
20288:
20289: -- 4955764
20286:
20287: END IF;
20288:
20289: -- 4955764
20290: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20291: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
20292:
20293:
20294: XLA_AE_LINES_PKG.ValidateCurrentLine;
20290: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20291: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
20292:
20293:
20294: XLA_AE_LINES_PKG.ValidateCurrentLine;
20295: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
20296:
20297: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
20298: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
20291: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
20292:
20293:
20294: XLA_AE_LINES_PKG.ValidateCurrentLine;
20295: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
20296:
20297: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
20298: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
20299: ,p_balance_type_code => l_balance_type_code);
20442: --
20443: -- bulk performance
20444: --
20445: l_balance_type_code VARCHAR2(1);
20446: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
20447: l_log_module VARCHAR2(240);
20448:
20449: --
20450: -- Upgrade strategy
20514: ') = 'RETURN_OCCURRENCE'
20515: THEN
20516:
20517: --
20518: XLA_AE_LINES_PKG.SetNewLine;
20519:
20520: p_balance_type_code := l_balance_type_code;
20521: -- set the flag so later we will know whether the gain loss line needs to be created
20522:
20526:
20527: --
20528: -- bulk performance
20529: --
20530: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
20531: p_header_num => 0); -- 4262811
20532: --
20533: -- set accounting line options
20534: --
20531: p_header_num => 0); -- 4262811
20532: --
20533: -- set accounting line options
20534: --
20535: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
20536: p_natural_side_code => 'C'
20537: , p_gain_or_loss_flag => 'N'
20538: , p_gl_transfer_mode_code => 'S'
20539: , p_acct_entry_type_code => 'A'
20545: --
20546: --
20547: -- set accounting line type info
20548: --
20549: xla_ae_lines_pkg.SetAcctLineType
20550: (p_component_type => l_component_type
20551: ,p_event_type_code => l_event_type_code
20552: ,p_line_definition_owner_code => l_line_definition_owner_code
20553: ,p_line_definition_code => l_line_definition_code
20559: ,p_event_class_code => l_event_class_code);
20560: --
20561: -- set accounting class
20562: --
20563: xla_ae_lines_pkg.SetAcctClass(
20564: p_accounting_class_code => 'REMITTANCE'
20565: , p_ae_header_id => l_ae_header_id
20566: );
20567:
20567:
20568: --
20569: -- set rounding class
20570: --
20571: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
20572: 'REMITTANCE';
20573:
20574: --
20575: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
20571: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
20572: 'REMITTANCE';
20573:
20574: --
20575: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
20576: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
20577: --
20578: -- bulk performance
20579: --
20572: 'REMITTANCE';
20573:
20574: --
20575: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
20576: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
20577: --
20578: -- bulk performance
20579: --
20580: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
20576: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
20577: --
20578: -- bulk performance
20579: --
20580: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
20581:
20582: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
20583: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
20584:
20578: -- bulk performance
20579: --
20580: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
20581:
20582: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
20583: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
20584:
20585: -- 4955764
20586: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20582: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
20583: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
20584:
20585: -- 4955764
20586: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20587: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
20588:
20589: -- 4458381 Public Sector Enh
20590:
20638: l_rec_acct_attrs.array_char_value(16) := p_source_84;
20639: l_rec_acct_attrs.array_acct_attr_code(17) := 'TRX_ROUNDING_REF';
20640: l_rec_acct_attrs.array_num_value(17) := to_char(p_source_82);
20641:
20642: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20643: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20644:
20645: ---------------------------------------------------------------------------------------------------------------
20646: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20639: l_rec_acct_attrs.array_acct_attr_code(17) := 'TRX_ROUNDING_REF';
20640: l_rec_acct_attrs.array_num_value(17) := to_char(p_source_82);
20641:
20642: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20643: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20644:
20645: ---------------------------------------------------------------------------------------------------------------
20646: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20647: ---------------------------------------------------------------------------------------------------------------
20642: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20643: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20644:
20645: ---------------------------------------------------------------------------------------------------------------
20646: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20647: ---------------------------------------------------------------------------------------------------------------
20648: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20649:
20650: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20644:
20645: ---------------------------------------------------------------------------------------------------------------
20646: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20647: ---------------------------------------------------------------------------------------------------------------
20648: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20649:
20650: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20651: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20652:
20646: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20647: ---------------------------------------------------------------------------------------------------------------
20648: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20649:
20650: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20651: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20652:
20653: IF xla_accounting_cache_pkg.GetValueChar
20654: (p_source_code => 'LEDGER_CATEGORY_CODE'
20647: ---------------------------------------------------------------------------------------------------------------
20648: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20649:
20650: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20651: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20652:
20653: IF xla_accounting_cache_pkg.GetValueChar
20654: (p_source_code => 'LEDGER_CATEGORY_CODE'
20655: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
20658: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
20659: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
20660: )
20661: THEN
20662: xla_ae_lines_pkg.BflowUpgEntry
20663: (p_business_method_code => l_bflow_method_code
20664: ,p_business_class_code => l_bflow_class_code
20665: ,p_balance_type => l_balance_type_code);
20666: ELSE
20664: ,p_business_class_code => l_bflow_class_code
20665: ,p_balance_type => l_balance_type_code);
20666: ELSE
20667: NULL;
20668: XLA_AE_LINES_PKG.business_flow_validation(
20669: p_business_method_code => l_bflow_method_code
20670: ,p_business_class_code => l_bflow_class_code
20671: ,p_inherit_description_flag => l_inherit_desc_flag);
20672: END IF;
20711: xla_accounting_err_pkg.build_message
20712: (p_appli_s_name => 'XLA'
20713: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
20714: ,p_token_1 => 'LINE_NUMBER'
20715: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
20716: ,p_token_2 => 'LINE_TYPE_NAME'
20717: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
20718: l_component_type
20719: ,l_component_code
20747: --
20748: --
20749: ------------------------------------------------------------------------------------------------
20750: -- 4219869 Business Flow
20751: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
20752: -- Prior Entry. Currently, the following code is always generated.
20753: ------------------------------------------------------------------------------------------------
20754: -- No ValidateCurrentLine for business flow method of Prior Entry
20755:
20756: ------------------------------------------------------------------------------------
20757: -- 4219869 Business Flow
20758: -- Populated credit and debit amounts -- Need to generate this within IF
20759: ------------------------------------------------------------------------------------
20760: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
20761:
20762: ----------------------------------------------------------------------------------
20763: -- 4219869 Business Flow
20764: -- Update journal entry status -- Need to generate this within IF
20788: -- To allow MPA report to determine if it should generate report process
20789: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
20790: ------------------------------------------------------------------------------------------
20791:
20792: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
20793: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
20794: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
20795: -- call ADRs
20796: -- Bug 4922099
20789: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
20790: ------------------------------------------------------------------------------------------
20791:
20792: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
20793: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
20794: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
20795: -- call ADRs
20796: -- Bug 4922099
20797: --
20810:
20811: --
20812: -- Update the line information that should be overwritten
20813: --
20814: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
20815: p_header_num => 1);
20816: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
20817:
20818: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20812: -- Update the line information that should be overwritten
20813: --
20814: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
20815: p_header_num => 1);
20816: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
20817:
20818: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20819:
20820: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
20814: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
20815: p_header_num => 1);
20816: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
20817:
20818: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20819:
20820: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
20821: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
20822: END IF;
20817:
20818: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20819:
20820: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
20821: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
20822: END IF;
20823:
20824: --
20825: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
20824: --
20825: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
20826: --
20827: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
20828: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
20829: ELSE
20830: ---------------------------------------------------------------------------------------------------
20831: -- 4262811a Switch Sign
20832: ---------------------------------------------------------------------------------------------------
20829: ELSE
20830: ---------------------------------------------------------------------------------------------------
20831: -- 4262811a Switch Sign
20832: ---------------------------------------------------------------------------------------------------
20833: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20834: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20835: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20836: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20837: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20830: ---------------------------------------------------------------------------------------------------
20831: -- 4262811a Switch Sign
20832: ---------------------------------------------------------------------------------------------------
20833: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20834: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20835: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20836: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20837: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20838: -- 5132302
20831: -- 4262811a Switch Sign
20832: ---------------------------------------------------------------------------------------------------
20833: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20834: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20835: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20836: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20837: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20838: -- 5132302
20839: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20832: ---------------------------------------------------------------------------------------------------
20833: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20834: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20835: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20836: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20837: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20838: -- 5132302
20839: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20840: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20833: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20834: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20835: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20836: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20837: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20838: -- 5132302
20839: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20840: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20841:
20835: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20836: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20837: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20838: -- 5132302
20839: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20840: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20841:
20842: END IF;
20843:
20836: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20837: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20838: -- 5132302
20839: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20840: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20841:
20842: END IF;
20843:
20844: -- 4955764
20841:
20842: END IF;
20843:
20844: -- 4955764
20845: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20846: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
20847:
20848:
20849: XLA_AE_LINES_PKG.ValidateCurrentLine;
20845: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20846: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
20847:
20848:
20849: XLA_AE_LINES_PKG.ValidateCurrentLine;
20850: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
20851:
20852: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
20853: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
20846: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
20847:
20848:
20849: XLA_AE_LINES_PKG.ValidateCurrentLine;
20850: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
20851:
20852: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
20853: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
20854: ,p_balance_type_code => l_balance_type_code);
21015: --
21016: -- bulk performance
21017: --
21018: l_balance_type_code VARCHAR2(1);
21019: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
21020: l_log_module VARCHAR2(240);
21021:
21022: --
21023: -- Upgrade strategy
21087: ') = 'REMITTANCE_OCCURRENCE'
21088: THEN
21089:
21090: --
21091: XLA_AE_LINES_PKG.SetNewLine;
21092:
21093: p_balance_type_code := l_balance_type_code;
21094: -- set the flag so later we will know whether the gain loss line needs to be created
21095:
21099:
21100: --
21101: -- bulk performance
21102: --
21103: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
21104: p_header_num => 0); -- 4262811
21105: --
21106: -- set accounting line options
21107: --
21104: p_header_num => 0); -- 4262811
21105: --
21106: -- set accounting line options
21107: --
21108: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
21109: p_natural_side_code => 'D'
21110: , p_gain_or_loss_flag => 'N'
21111: , p_gl_transfer_mode_code => 'S'
21112: , p_acct_entry_type_code => 'A'
21118: --
21119: --
21120: -- set accounting line type info
21121: --
21122: xla_ae_lines_pkg.SetAcctLineType
21123: (p_component_type => l_component_type
21124: ,p_event_type_code => l_event_type_code
21125: ,p_line_definition_owner_code => l_line_definition_owner_code
21126: ,p_line_definition_code => l_line_definition_code
21132: ,p_event_class_code => l_event_class_code);
21133: --
21134: -- set accounting class
21135: --
21136: xla_ae_lines_pkg.SetAcctClass(
21137: p_accounting_class_code => 'REMITTANCE'
21138: , p_ae_header_id => l_ae_header_id
21139: );
21140:
21140:
21141: --
21142: -- set rounding class
21143: --
21144: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
21145: 'REMITTANCE';
21146:
21147: --
21148: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21144: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
21145: 'REMITTANCE';
21146:
21147: --
21148: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21149: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21150: --
21151: -- bulk performance
21152: --
21145: 'REMITTANCE';
21146:
21147: --
21148: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21149: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21150: --
21151: -- bulk performance
21152: --
21153: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21149: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21150: --
21151: -- bulk performance
21152: --
21153: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21154:
21155: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21156: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21157:
21151: -- bulk performance
21152: --
21153: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21154:
21155: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21156: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21157:
21158: -- 4955764
21159: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21155: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21156: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21157:
21158: -- 4955764
21159: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21160: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
21161:
21162: -- 4458381 Public Sector Enh
21163:
21221: l_rec_acct_attrs.array_char_value(21) := p_source_84;
21222: l_rec_acct_attrs.array_acct_attr_code(22) := 'TRX_ROUNDING_REF';
21223: l_rec_acct_attrs.array_num_value(22) := to_char(p_source_82);
21224:
21225: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21226: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21227:
21228: ---------------------------------------------------------------------------------------------------------------
21229: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21222: l_rec_acct_attrs.array_acct_attr_code(22) := 'TRX_ROUNDING_REF';
21223: l_rec_acct_attrs.array_num_value(22) := to_char(p_source_82);
21224:
21225: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21226: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21227:
21228: ---------------------------------------------------------------------------------------------------------------
21229: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21230: ---------------------------------------------------------------------------------------------------------------
21225: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21226: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21227:
21228: ---------------------------------------------------------------------------------------------------------------
21229: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21230: ---------------------------------------------------------------------------------------------------------------
21231: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21232:
21233: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21227:
21228: ---------------------------------------------------------------------------------------------------------------
21229: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21230: ---------------------------------------------------------------------------------------------------------------
21231: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21232:
21233: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21234: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21235:
21229: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21230: ---------------------------------------------------------------------------------------------------------------
21231: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21232:
21233: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21234: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21235:
21236: IF xla_accounting_cache_pkg.GetValueChar
21237: (p_source_code => 'LEDGER_CATEGORY_CODE'
21230: ---------------------------------------------------------------------------------------------------------------
21231: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21232:
21233: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21234: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21235:
21236: IF xla_accounting_cache_pkg.GetValueChar
21237: (p_source_code => 'LEDGER_CATEGORY_CODE'
21238: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
21241: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
21242: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
21243: )
21244: THEN
21245: xla_ae_lines_pkg.BflowUpgEntry
21246: (p_business_method_code => l_bflow_method_code
21247: ,p_business_class_code => l_bflow_class_code
21248: ,p_balance_type => l_balance_type_code);
21249: ELSE
21258: --
21259: -- call description
21260: --
21261:
21262: xla_ae_lines_pkg.SetLineDescription(
21263: p_ae_header_id => l_ae_header_id
21264: ,p_description => Description_3 (
21265: p_application_id => p_application_id
21266: , p_ae_header_id => l_ae_header_id
21293: , x_value_type_code => l_adr_value_type_code
21294: , p_side => 'NA'
21295: );
21296:
21297: xla_ae_lines_pkg.set_ccid(
21298: p_code_combination_id => l_ccid
21299: , p_value_type_code => l_adr_value_type_code
21300: , p_transaction_coa_id => l_adr_transaction_coa_id
21301: , p_accounting_coa_id => l_adr_accounting_coa_id
21329: xla_accounting_err_pkg.build_message
21330: (p_appli_s_name => 'XLA'
21331: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
21332: ,p_token_1 => 'LINE_NUMBER'
21333: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
21334: ,p_token_2 => 'LINE_TYPE_NAME'
21335: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
21336: l_component_type
21337: ,l_component_code
21365: --
21366: --
21367: ------------------------------------------------------------------------------------------------
21368: -- 4219869 Business Flow
21369: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
21370: -- Prior Entry. Currently, the following code is always generated.
21371: ------------------------------------------------------------------------------------------------
21372: XLA_AE_LINES_PKG.ValidateCurrentLine;
21373:
21368: -- 4219869 Business Flow
21369: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
21370: -- Prior Entry. Currently, the following code is always generated.
21371: ------------------------------------------------------------------------------------------------
21372: XLA_AE_LINES_PKG.ValidateCurrentLine;
21373:
21374: ------------------------------------------------------------------------------------
21375: -- 4219869 Business Flow
21376: -- Populated credit and debit amounts -- Need to generate this within IF
21374: ------------------------------------------------------------------------------------
21375: -- 4219869 Business Flow
21376: -- Populated credit and debit amounts -- Need to generate this within IF
21377: ------------------------------------------------------------------------------------
21378: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
21379:
21380: ----------------------------------------------------------------------------------
21381: -- 4219869 Business Flow
21382: -- Update journal entry status -- Need to generate this within IF
21406: -- To allow MPA report to determine if it should generate report process
21407: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
21408: ------------------------------------------------------------------------------------------
21409:
21410: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
21411: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
21412: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
21413: -- call ADRs
21414: -- Bug 4922099
21407: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
21408: ------------------------------------------------------------------------------------------
21409:
21410: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
21411: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
21412: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
21413: -- call ADRs
21414: -- Bug 4922099
21415: --
21431: , x_value_type_code => l_adr_value_type_code
21432: , p_side => 'NA'
21433: );
21434:
21435: xla_ae_lines_pkg.set_ccid(
21436: p_code_combination_id => l_ccid
21437: , p_value_type_code => l_adr_value_type_code
21438: , p_transaction_coa_id => l_adr_transaction_coa_id
21439: , p_accounting_coa_id => l_adr_accounting_coa_id
21454:
21455: --
21456: -- Update the line information that should be overwritten
21457: --
21458: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21459: p_header_num => 1);
21460: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21461:
21462: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21456: -- Update the line information that should be overwritten
21457: --
21458: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21459: p_header_num => 1);
21460: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21461:
21462: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21463:
21464: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21458: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21459: p_header_num => 1);
21460: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21461:
21462: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21463:
21464: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21465: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
21466: END IF;
21461:
21462: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21463:
21464: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21465: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
21466: END IF;
21467:
21468: --
21469: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
21468: --
21469: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
21470: --
21471: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
21472: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
21473: ELSE
21474: ---------------------------------------------------------------------------------------------------
21475: -- 4262811a Switch Sign
21476: ---------------------------------------------------------------------------------------------------
21473: ELSE
21474: ---------------------------------------------------------------------------------------------------
21475: -- 4262811a Switch Sign
21476: ---------------------------------------------------------------------------------------------------
21477: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21478: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21480: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21474: ---------------------------------------------------------------------------------------------------
21475: -- 4262811a Switch Sign
21476: ---------------------------------------------------------------------------------------------------
21477: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21478: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21480: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21482: -- 5132302
21475: -- 4262811a Switch Sign
21476: ---------------------------------------------------------------------------------------------------
21477: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21478: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21480: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21482: -- 5132302
21483: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21476: ---------------------------------------------------------------------------------------------------
21477: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21478: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21480: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21482: -- 5132302
21483: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21484: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21477: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21478: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21480: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21482: -- 5132302
21483: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21484: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21485:
21479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21480: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21482: -- 5132302
21483: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21484: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21485:
21486: END IF;
21487:
21480: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21482: -- 5132302
21483: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21484: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21485:
21486: END IF;
21487:
21488: -- 4955764
21485:
21486: END IF;
21487:
21488: -- 4955764
21489: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21490: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21491:
21492:
21493: XLA_AE_LINES_PKG.ValidateCurrentLine;
21489: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21490: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21491:
21492:
21493: XLA_AE_LINES_PKG.ValidateCurrentLine;
21494: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
21495:
21496: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
21497: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
21490: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21491:
21492:
21493: XLA_AE_LINES_PKG.ValidateCurrentLine;
21494: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
21495:
21496: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
21497: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
21498: ,p_balance_type_code => l_balance_type_code);
21656: --
21657: -- bulk performance
21658: --
21659: l_balance_type_code VARCHAR2(1);
21660: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
21661: l_log_module VARCHAR2(240);
21662:
21663: --
21664: -- Upgrade strategy
21726: ') = 'COLLECTION'
21727: THEN
21728:
21729: --
21730: XLA_AE_LINES_PKG.SetNewLine;
21731:
21732: p_balance_type_code := l_balance_type_code;
21733: -- set the flag so later we will know whether the gain loss line needs to be created
21734:
21738:
21739: --
21740: -- bulk performance
21741: --
21742: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
21743: p_header_num => 0); -- 4262811
21744: --
21745: -- set accounting line options
21746: --
21743: p_header_num => 0); -- 4262811
21744: --
21745: -- set accounting line options
21746: --
21747: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
21748: p_natural_side_code => 'C'
21749: , p_gain_or_loss_flag => 'N'
21750: , p_gl_transfer_mode_code => 'S'
21751: , p_acct_entry_type_code => 'A'
21757: --
21758: --
21759: -- set accounting line type info
21760: --
21761: xla_ae_lines_pkg.SetAcctLineType
21762: (p_component_type => l_component_type
21763: ,p_event_type_code => l_event_type_code
21764: ,p_line_definition_owner_code => l_line_definition_owner_code
21765: ,p_line_definition_code => l_line_definition_code
21771: ,p_event_class_code => l_event_class_code);
21772: --
21773: -- set accounting class
21774: --
21775: xla_ae_lines_pkg.SetAcctClass(
21776: p_accounting_class_code => 'CASH'
21777: , p_ae_header_id => l_ae_header_id
21778: );
21779:
21779:
21780: --
21781: -- set rounding class
21782: --
21783: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
21784: 'CASH';
21785:
21786: --
21787: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21783: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
21784: 'CASH';
21785:
21786: --
21787: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21788: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21789: --
21790: -- bulk performance
21791: --
21784: 'CASH';
21785:
21786: --
21787: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21788: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21789: --
21790: -- bulk performance
21791: --
21792: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21788: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21789: --
21790: -- bulk performance
21791: --
21792: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21793:
21794: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21795: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21796:
21790: -- bulk performance
21791: --
21792: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21793:
21794: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21795: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21796:
21797: -- 4955764
21798: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21794: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21795: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21796:
21797: -- 4955764
21798: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21799: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
21800:
21801: -- 4458381 Public Sector Enh
21802:
21860: l_rec_acct_attrs.array_char_value(21) := p_source_84;
21861: l_rec_acct_attrs.array_acct_attr_code(22) := 'TRX_ROUNDING_REF';
21862: l_rec_acct_attrs.array_num_value(22) := to_char(p_source_82);
21863:
21864: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21865: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21866:
21867: ---------------------------------------------------------------------------------------------------------------
21868: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21861: l_rec_acct_attrs.array_acct_attr_code(22) := 'TRX_ROUNDING_REF';
21862: l_rec_acct_attrs.array_num_value(22) := to_char(p_source_82);
21863:
21864: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21865: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21866:
21867: ---------------------------------------------------------------------------------------------------------------
21868: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21869: ---------------------------------------------------------------------------------------------------------------
21864: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21865: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21866:
21867: ---------------------------------------------------------------------------------------------------------------
21868: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21869: ---------------------------------------------------------------------------------------------------------------
21870: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21871:
21872: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21866:
21867: ---------------------------------------------------------------------------------------------------------------
21868: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21869: ---------------------------------------------------------------------------------------------------------------
21870: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21871:
21872: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21873: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21874:
21868: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21869: ---------------------------------------------------------------------------------------------------------------
21870: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21871:
21872: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21873: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21874:
21875: IF xla_accounting_cache_pkg.GetValueChar
21876: (p_source_code => 'LEDGER_CATEGORY_CODE'
21869: ---------------------------------------------------------------------------------------------------------------
21870: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21871:
21872: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21873: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21874:
21875: IF xla_accounting_cache_pkg.GetValueChar
21876: (p_source_code => 'LEDGER_CATEGORY_CODE'
21877: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
21880: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
21881: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
21882: )
21883: THEN
21884: xla_ae_lines_pkg.BflowUpgEntry
21885: (p_business_method_code => l_bflow_method_code
21886: ,p_business_class_code => l_bflow_class_code
21887: ,p_balance_type => l_balance_type_code);
21888: ELSE
21897: --
21898: -- call description
21899: --
21900:
21901: xla_ae_lines_pkg.SetLineDescription(
21902: p_ae_header_id => l_ae_header_id
21903: ,p_description => Description_5 (
21904: p_application_id => p_application_id
21905: , p_ae_header_id => l_ae_header_id
21934: , x_value_type_code => l_adr_value_type_code
21935: , p_side => 'NA'
21936: );
21937:
21938: xla_ae_lines_pkg.set_ccid(
21939: p_code_combination_id => l_ccid
21940: , p_value_type_code => l_adr_value_type_code
21941: , p_transaction_coa_id => l_adr_transaction_coa_id
21942: , p_accounting_coa_id => l_adr_accounting_coa_id
21970: xla_accounting_err_pkg.build_message
21971: (p_appli_s_name => 'XLA'
21972: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
21973: ,p_token_1 => 'LINE_NUMBER'
21974: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
21975: ,p_token_2 => 'LINE_TYPE_NAME'
21976: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
21977: l_component_type
21978: ,l_component_code
22006: --
22007: --
22008: ------------------------------------------------------------------------------------------------
22009: -- 4219869 Business Flow
22010: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
22011: -- Prior Entry. Currently, the following code is always generated.
22012: ------------------------------------------------------------------------------------------------
22013: XLA_AE_LINES_PKG.ValidateCurrentLine;
22014:
22009: -- 4219869 Business Flow
22010: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
22011: -- Prior Entry. Currently, the following code is always generated.
22012: ------------------------------------------------------------------------------------------------
22013: XLA_AE_LINES_PKG.ValidateCurrentLine;
22014:
22015: ------------------------------------------------------------------------------------
22016: -- 4219869 Business Flow
22017: -- Populated credit and debit amounts -- Need to generate this within IF
22015: ------------------------------------------------------------------------------------
22016: -- 4219869 Business Flow
22017: -- Populated credit and debit amounts -- Need to generate this within IF
22018: ------------------------------------------------------------------------------------
22019: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22020:
22021: ----------------------------------------------------------------------------------
22022: -- 4219869 Business Flow
22023: -- Update journal entry status -- Need to generate this within IF
22047: -- To allow MPA report to determine if it should generate report process
22048: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
22049: ------------------------------------------------------------------------------------------
22050:
22051: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
22052: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
22053: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
22054: -- call ADRs
22055: -- Bug 4922099
22048: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
22049: ------------------------------------------------------------------------------------------
22050:
22051: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
22052: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
22053: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
22054: -- call ADRs
22055: -- Bug 4922099
22056: --
22072: , x_value_type_code => l_adr_value_type_code
22073: , p_side => 'NA'
22074: );
22075:
22076: xla_ae_lines_pkg.set_ccid(
22077: p_code_combination_id => l_ccid
22078: , p_value_type_code => l_adr_value_type_code
22079: , p_transaction_coa_id => l_adr_transaction_coa_id
22080: , p_accounting_coa_id => l_adr_accounting_coa_id
22095:
22096: --
22097: -- Update the line information that should be overwritten
22098: --
22099: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22100: p_header_num => 1);
22101: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22102:
22103: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22097: -- Update the line information that should be overwritten
22098: --
22099: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22100: p_header_num => 1);
22101: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22102:
22103: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22104:
22105: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22099: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22100: p_header_num => 1);
22101: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22102:
22103: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22104:
22105: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22106: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
22107: END IF;
22102:
22103: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22104:
22105: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22106: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
22107: END IF;
22108:
22109: --
22110: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
22109: --
22110: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
22111: --
22112: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
22113: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
22114: ELSE
22115: ---------------------------------------------------------------------------------------------------
22116: -- 4262811a Switch Sign
22117: ---------------------------------------------------------------------------------------------------
22114: ELSE
22115: ---------------------------------------------------------------------------------------------------
22116: -- 4262811a Switch Sign
22117: ---------------------------------------------------------------------------------------------------
22118: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22119: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22120: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22121: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22122: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22115: ---------------------------------------------------------------------------------------------------
22116: -- 4262811a Switch Sign
22117: ---------------------------------------------------------------------------------------------------
22118: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22119: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22120: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22121: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22122: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22123: -- 5132302
22116: -- 4262811a Switch Sign
22117: ---------------------------------------------------------------------------------------------------
22118: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22119: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22120: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22121: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22122: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22123: -- 5132302
22124: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22117: ---------------------------------------------------------------------------------------------------
22118: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22119: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22120: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22121: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22122: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22123: -- 5132302
22124: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22125: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22118: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22119: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22120: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22121: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22122: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22123: -- 5132302
22124: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22125: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22126:
22120: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22121: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22122: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22123: -- 5132302
22124: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22125: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22126:
22127: END IF;
22128:
22121: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22122: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22123: -- 5132302
22124: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22125: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22126:
22127: END IF;
22128:
22129: -- 4955764
22126:
22127: END IF;
22128:
22129: -- 4955764
22130: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22131: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22132:
22133:
22134: XLA_AE_LINES_PKG.ValidateCurrentLine;
22130: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22131: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22132:
22133:
22134: XLA_AE_LINES_PKG.ValidateCurrentLine;
22135: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22136:
22137: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
22138: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
22131: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22132:
22133:
22134: XLA_AE_LINES_PKG.ValidateCurrentLine;
22135: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22136:
22137: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
22138: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
22139: ,p_balance_type_code => l_balance_type_code);
22300: --
22301: -- bulk performance
22302: --
22303: l_balance_type_code VARCHAR2(1);
22304: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
22305: l_log_module VARCHAR2(240);
22306:
22307: --
22308: -- Upgrade strategy
22372: ') = 'REMITTANCE_OCCURRENCE'
22373: THEN
22374:
22375: --
22376: XLA_AE_LINES_PKG.SetNewLine;
22377:
22378: p_balance_type_code := l_balance_type_code;
22379: -- set the flag so later we will know whether the gain loss line needs to be created
22380:
22384:
22385: --
22386: -- bulk performance
22387: --
22388: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
22389: p_header_num => 0); -- 4262811
22390: --
22391: -- set accounting line options
22392: --
22389: p_header_num => 0); -- 4262811
22390: --
22391: -- set accounting line options
22392: --
22393: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
22394: p_natural_side_code => 'C'
22395: , p_gain_or_loss_flag => 'N'
22396: , p_gl_transfer_mode_code => 'S'
22397: , p_acct_entry_type_code => 'A'
22403: --
22404: --
22405: -- set accounting line type info
22406: --
22407: xla_ae_lines_pkg.SetAcctLineType
22408: (p_component_type => l_component_type
22409: ,p_event_type_code => l_event_type_code
22410: ,p_line_definition_owner_code => l_line_definition_owner_code
22411: ,p_line_definition_code => l_line_definition_code
22417: ,p_event_class_code => l_event_class_code);
22418: --
22419: -- set accounting class
22420: --
22421: xla_ae_lines_pkg.SetAcctClass(
22422: p_accounting_class_code => 'REMITTANCE'
22423: , p_ae_header_id => l_ae_header_id
22424: );
22425:
22425:
22426: --
22427: -- set rounding class
22428: --
22429: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
22430: 'REMITTANCE';
22431:
22432: --
22433: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
22429: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
22430: 'REMITTANCE';
22431:
22432: --
22433: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
22434: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
22435: --
22436: -- bulk performance
22437: --
22430: 'REMITTANCE';
22431:
22432: --
22433: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
22434: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
22435: --
22436: -- bulk performance
22437: --
22438: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
22434: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
22435: --
22436: -- bulk performance
22437: --
22438: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
22439:
22440: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
22441: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
22442:
22436: -- bulk performance
22437: --
22438: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
22439:
22440: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
22441: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
22442:
22443: -- 4955764
22444: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22440: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
22441: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
22442:
22443: -- 4955764
22444: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22445: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
22446:
22447: -- 4458381 Public Sector Enh
22448:
22506: l_rec_acct_attrs.array_char_value(21) := p_source_84;
22507: l_rec_acct_attrs.array_acct_attr_code(22) := 'TRX_ROUNDING_REF';
22508: l_rec_acct_attrs.array_num_value(22) := to_char(p_source_82);
22509:
22510: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
22511: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
22512:
22513: ---------------------------------------------------------------------------------------------------------------
22514: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22507: l_rec_acct_attrs.array_acct_attr_code(22) := 'TRX_ROUNDING_REF';
22508: l_rec_acct_attrs.array_num_value(22) := to_char(p_source_82);
22509:
22510: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
22511: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
22512:
22513: ---------------------------------------------------------------------------------------------------------------
22514: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22515: ---------------------------------------------------------------------------------------------------------------
22510: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
22511: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
22512:
22513: ---------------------------------------------------------------------------------------------------------------
22514: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22515: ---------------------------------------------------------------------------------------------------------------
22516: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22517:
22518: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22512:
22513: ---------------------------------------------------------------------------------------------------------------
22514: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22515: ---------------------------------------------------------------------------------------------------------------
22516: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22517:
22518: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22519: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22520:
22514: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22515: ---------------------------------------------------------------------------------------------------------------
22516: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22517:
22518: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22519: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22520:
22521: IF xla_accounting_cache_pkg.GetValueChar
22522: (p_source_code => 'LEDGER_CATEGORY_CODE'
22515: ---------------------------------------------------------------------------------------------------------------
22516: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22517:
22518: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22519: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22520:
22521: IF xla_accounting_cache_pkg.GetValueChar
22522: (p_source_code => 'LEDGER_CATEGORY_CODE'
22523: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
22526: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
22527: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
22528: )
22529: THEN
22530: xla_ae_lines_pkg.BflowUpgEntry
22531: (p_business_method_code => l_bflow_method_code
22532: ,p_business_class_code => l_bflow_class_code
22533: ,p_balance_type => l_balance_type_code);
22534: ELSE
22543: --
22544: -- call description
22545: --
22546:
22547: xla_ae_lines_pkg.SetLineDescription(
22548: p_ae_header_id => l_ae_header_id
22549: ,p_description => Description_6 (
22550: p_application_id => p_application_id
22551: , p_ae_header_id => l_ae_header_id
22578: , x_value_type_code => l_adr_value_type_code
22579: , p_side => 'NA'
22580: );
22581:
22582: xla_ae_lines_pkg.set_ccid(
22583: p_code_combination_id => l_ccid
22584: , p_value_type_code => l_adr_value_type_code
22585: , p_transaction_coa_id => l_adr_transaction_coa_id
22586: , p_accounting_coa_id => l_adr_accounting_coa_id
22614: xla_accounting_err_pkg.build_message
22615: (p_appli_s_name => 'XLA'
22616: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
22617: ,p_token_1 => 'LINE_NUMBER'
22618: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
22619: ,p_token_2 => 'LINE_TYPE_NAME'
22620: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
22621: l_component_type
22622: ,l_component_code
22650: --
22651: --
22652: ------------------------------------------------------------------------------------------------
22653: -- 4219869 Business Flow
22654: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
22655: -- Prior Entry. Currently, the following code is always generated.
22656: ------------------------------------------------------------------------------------------------
22657: XLA_AE_LINES_PKG.ValidateCurrentLine;
22658:
22653: -- 4219869 Business Flow
22654: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
22655: -- Prior Entry. Currently, the following code is always generated.
22656: ------------------------------------------------------------------------------------------------
22657: XLA_AE_LINES_PKG.ValidateCurrentLine;
22658:
22659: ------------------------------------------------------------------------------------
22660: -- 4219869 Business Flow
22661: -- Populated credit and debit amounts -- Need to generate this within IF
22659: ------------------------------------------------------------------------------------
22660: -- 4219869 Business Flow
22661: -- Populated credit and debit amounts -- Need to generate this within IF
22662: ------------------------------------------------------------------------------------
22663: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22664:
22665: ----------------------------------------------------------------------------------
22666: -- 4219869 Business Flow
22667: -- Update journal entry status -- Need to generate this within IF
22691: -- To allow MPA report to determine if it should generate report process
22692: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
22693: ------------------------------------------------------------------------------------------
22694:
22695: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
22696: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
22697: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
22698: -- call ADRs
22699: -- Bug 4922099
22692: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
22693: ------------------------------------------------------------------------------------------
22694:
22695: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
22696: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
22697: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
22698: -- call ADRs
22699: -- Bug 4922099
22700: --
22716: , x_value_type_code => l_adr_value_type_code
22717: , p_side => 'NA'
22718: );
22719:
22720: xla_ae_lines_pkg.set_ccid(
22721: p_code_combination_id => l_ccid
22722: , p_value_type_code => l_adr_value_type_code
22723: , p_transaction_coa_id => l_adr_transaction_coa_id
22724: , p_accounting_coa_id => l_adr_accounting_coa_id
22739:
22740: --
22741: -- Update the line information that should be overwritten
22742: --
22743: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22744: p_header_num => 1);
22745: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22746:
22747: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22741: -- Update the line information that should be overwritten
22742: --
22743: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22744: p_header_num => 1);
22745: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22746:
22747: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22748:
22749: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22743: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22744: p_header_num => 1);
22745: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22746:
22747: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22748:
22749: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22750: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
22751: END IF;
22746:
22747: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22748:
22749: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22750: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
22751: END IF;
22752:
22753: --
22754: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
22753: --
22754: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
22755: --
22756: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
22757: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
22758: ELSE
22759: ---------------------------------------------------------------------------------------------------
22760: -- 4262811a Switch Sign
22761: ---------------------------------------------------------------------------------------------------
22758: ELSE
22759: ---------------------------------------------------------------------------------------------------
22760: -- 4262811a Switch Sign
22761: ---------------------------------------------------------------------------------------------------
22762: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22763: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22764: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22765: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22766: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22759: ---------------------------------------------------------------------------------------------------
22760: -- 4262811a Switch Sign
22761: ---------------------------------------------------------------------------------------------------
22762: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22763: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22764: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22765: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22766: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22767: -- 5132302
22760: -- 4262811a Switch Sign
22761: ---------------------------------------------------------------------------------------------------
22762: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22763: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22764: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22765: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22766: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22767: -- 5132302
22768: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22761: ---------------------------------------------------------------------------------------------------
22762: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22763: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22764: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22765: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22766: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22767: -- 5132302
22768: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22769: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22762: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22763: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22764: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22765: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22766: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22767: -- 5132302
22768: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22769: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22770:
22764: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22765: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22766: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22767: -- 5132302
22768: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22769: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22770:
22771: END IF;
22772:
22765: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22766: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22767: -- 5132302
22768: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22769: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22770:
22771: END IF;
22772:
22773: -- 4955764
22770:
22771: END IF;
22772:
22773: -- 4955764
22774: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22775: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22776:
22777:
22778: XLA_AE_LINES_PKG.ValidateCurrentLine;
22774: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22775: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22776:
22777:
22778: XLA_AE_LINES_PKG.ValidateCurrentLine;
22779: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22780:
22781: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
22782: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
22775: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22776:
22777:
22778: XLA_AE_LINES_PKG.ValidateCurrentLine;
22779: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22780:
22781: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
22782: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
22783: ,p_balance_type_code => l_balance_type_code);
22926: --
22927: -- bulk performance
22928: --
22929: l_balance_type_code VARCHAR2(1);
22930: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
22931: l_log_module VARCHAR2(240);
22932:
22933: --
22934: -- Upgrade strategy
22998: ') = 'RETURN_OCCURRENCE'
22999: THEN
23000:
23001: --
23002: XLA_AE_LINES_PKG.SetNewLine;
23003:
23004: p_balance_type_code := l_balance_type_code;
23005: -- set the flag so later we will know whether the gain loss line needs to be created
23006:
23010:
23011: --
23012: -- bulk performance
23013: --
23014: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
23015: p_header_num => 0); -- 4262811
23016: --
23017: -- set accounting line options
23018: --
23015: p_header_num => 0); -- 4262811
23016: --
23017: -- set accounting line options
23018: --
23019: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
23020: p_natural_side_code => 'D'
23021: , p_gain_or_loss_flag => 'N'
23022: , p_gl_transfer_mode_code => 'S'
23023: , p_acct_entry_type_code => 'A'
23029: --
23030: --
23031: -- set accounting line type info
23032: --
23033: xla_ae_lines_pkg.SetAcctLineType
23034: (p_component_type => l_component_type
23035: ,p_event_type_code => l_event_type_code
23036: ,p_line_definition_owner_code => l_line_definition_owner_code
23037: ,p_line_definition_code => l_line_definition_code
23043: ,p_event_class_code => l_event_class_code);
23044: --
23045: -- set accounting class
23046: --
23047: xla_ae_lines_pkg.SetAcctClass(
23048: p_accounting_class_code => 'REMITTANCE'
23049: , p_ae_header_id => l_ae_header_id
23050: );
23051:
23051:
23052: --
23053: -- set rounding class
23054: --
23055: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
23056: 'REMITTANCE';
23057:
23058: --
23059: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23055: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
23056: 'REMITTANCE';
23057:
23058: --
23059: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23060: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23061: --
23062: -- bulk performance
23063: --
23056: 'REMITTANCE';
23057:
23058: --
23059: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23060: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23061: --
23062: -- bulk performance
23063: --
23064: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23060: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23061: --
23062: -- bulk performance
23063: --
23064: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23065:
23066: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23067: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23068:
23062: -- bulk performance
23063: --
23064: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23065:
23066: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23067: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23068:
23069: -- 4955764
23070: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23066: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23067: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23068:
23069: -- 4955764
23070: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23071: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
23072:
23073: -- 4458381 Public Sector Enh
23074:
23122: l_rec_acct_attrs.array_char_value(16) := p_source_84;
23123: l_rec_acct_attrs.array_acct_attr_code(17) := 'TRX_ROUNDING_REF';
23124: l_rec_acct_attrs.array_num_value(17) := to_char(p_source_82);
23125:
23126: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23127: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23128:
23129: ---------------------------------------------------------------------------------------------------------------
23130: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23123: l_rec_acct_attrs.array_acct_attr_code(17) := 'TRX_ROUNDING_REF';
23124: l_rec_acct_attrs.array_num_value(17) := to_char(p_source_82);
23125:
23126: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23127: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23128:
23129: ---------------------------------------------------------------------------------------------------------------
23130: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23131: ---------------------------------------------------------------------------------------------------------------
23126: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23127: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23128:
23129: ---------------------------------------------------------------------------------------------------------------
23130: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23131: ---------------------------------------------------------------------------------------------------------------
23132: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23133:
23134: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23128:
23129: ---------------------------------------------------------------------------------------------------------------
23130: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23131: ---------------------------------------------------------------------------------------------------------------
23132: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23133:
23134: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23135: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23136:
23130: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23131: ---------------------------------------------------------------------------------------------------------------
23132: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23133:
23134: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23135: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23136:
23137: IF xla_accounting_cache_pkg.GetValueChar
23138: (p_source_code => 'LEDGER_CATEGORY_CODE'
23131: ---------------------------------------------------------------------------------------------------------------
23132: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23133:
23134: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23135: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23136:
23137: IF xla_accounting_cache_pkg.GetValueChar
23138: (p_source_code => 'LEDGER_CATEGORY_CODE'
23139: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
23142: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
23143: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
23144: )
23145: THEN
23146: xla_ae_lines_pkg.BflowUpgEntry
23147: (p_business_method_code => l_bflow_method_code
23148: ,p_business_class_code => l_bflow_class_code
23149: ,p_balance_type => l_balance_type_code);
23150: ELSE
23148: ,p_business_class_code => l_bflow_class_code
23149: ,p_balance_type => l_balance_type_code);
23150: ELSE
23151: NULL;
23152: XLA_AE_LINES_PKG.business_flow_validation(
23153: p_business_method_code => l_bflow_method_code
23154: ,p_business_class_code => l_bflow_class_code
23155: ,p_inherit_description_flag => l_inherit_desc_flag);
23156: END IF;
23195: xla_accounting_err_pkg.build_message
23196: (p_appli_s_name => 'XLA'
23197: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
23198: ,p_token_1 => 'LINE_NUMBER'
23199: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
23200: ,p_token_2 => 'LINE_TYPE_NAME'
23201: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
23202: l_component_type
23203: ,l_component_code
23231: --
23232: --
23233: ------------------------------------------------------------------------------------------------
23234: -- 4219869 Business Flow
23235: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
23236: -- Prior Entry. Currently, the following code is always generated.
23237: ------------------------------------------------------------------------------------------------
23238: -- No ValidateCurrentLine for business flow method of Prior Entry
23239:
23240: ------------------------------------------------------------------------------------
23241: -- 4219869 Business Flow
23242: -- Populated credit and debit amounts -- Need to generate this within IF
23243: ------------------------------------------------------------------------------------
23244: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23245:
23246: ----------------------------------------------------------------------------------
23247: -- 4219869 Business Flow
23248: -- Update journal entry status -- Need to generate this within IF
23272: -- To allow MPA report to determine if it should generate report process
23273: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
23274: ------------------------------------------------------------------------------------------
23275:
23276: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
23277: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
23278: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
23279: -- call ADRs
23280: -- Bug 4922099
23273: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
23274: ------------------------------------------------------------------------------------------
23275:
23276: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
23277: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
23278: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
23279: -- call ADRs
23280: -- Bug 4922099
23281: --
23294:
23295: --
23296: -- Update the line information that should be overwritten
23297: --
23298: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23299: p_header_num => 1);
23300: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23301:
23302: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23296: -- Update the line information that should be overwritten
23297: --
23298: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23299: p_header_num => 1);
23300: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23301:
23302: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23303:
23304: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23298: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23299: p_header_num => 1);
23300: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23301:
23302: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23303:
23304: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23305: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
23306: END IF;
23301:
23302: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23303:
23304: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23305: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
23306: END IF;
23307:
23308: --
23309: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
23308: --
23309: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
23310: --
23311: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
23312: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
23313: ELSE
23314: ---------------------------------------------------------------------------------------------------
23315: -- 4262811a Switch Sign
23316: ---------------------------------------------------------------------------------------------------
23313: ELSE
23314: ---------------------------------------------------------------------------------------------------
23315: -- 4262811a Switch Sign
23316: ---------------------------------------------------------------------------------------------------
23317: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23319: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23314: ---------------------------------------------------------------------------------------------------
23315: -- 4262811a Switch Sign
23316: ---------------------------------------------------------------------------------------------------
23317: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23319: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23322: -- 5132302
23315: -- 4262811a Switch Sign
23316: ---------------------------------------------------------------------------------------------------
23317: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23319: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23322: -- 5132302
23323: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23316: ---------------------------------------------------------------------------------------------------
23317: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23319: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23322: -- 5132302
23323: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23324: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23317: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23319: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23322: -- 5132302
23323: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23324: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23325:
23319: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23322: -- 5132302
23323: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23324: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23325:
23326: END IF;
23327:
23320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23322: -- 5132302
23323: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23324: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23325:
23326: END IF;
23327:
23328: -- 4955764
23325:
23326: END IF;
23327:
23328: -- 4955764
23329: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23330: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23331:
23332:
23333: XLA_AE_LINES_PKG.ValidateCurrentLine;
23329: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23330: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23331:
23332:
23333: XLA_AE_LINES_PKG.ValidateCurrentLine;
23334: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23335:
23336: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
23337: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
23330: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23331:
23332:
23333: XLA_AE_LINES_PKG.ValidateCurrentLine;
23334: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23335:
23336: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
23337: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
23338: ,p_balance_type_code => l_balance_type_code);
23469: --
23470: -- bulk performance
23471: --
23472: l_balance_type_code VARCHAR2(1);
23473: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
23474: l_log_module VARCHAR2(240);
23475:
23476: --
23477: -- Upgrade strategy
23537: ') = 'REC'
23538: THEN
23539:
23540: --
23541: XLA_AE_LINES_PKG.SetNewLine;
23542:
23543: p_balance_type_code := l_balance_type_code;
23544: -- set the flag so later we will know whether the gain loss line needs to be created
23545:
23549:
23550: --
23551: -- bulk performance
23552: --
23553: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
23554: p_header_num => 0); -- 4262811
23555: --
23556: -- set accounting line options
23557: --
23554: p_header_num => 0); -- 4262811
23555: --
23556: -- set accounting line options
23557: --
23558: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
23559: p_natural_side_code => 'D'
23560: , p_gain_or_loss_flag => 'N'
23561: , p_gl_transfer_mode_code => 'S'
23562: , p_acct_entry_type_code => 'A'
23568: --
23569: --
23570: -- set accounting line type info
23571: --
23572: xla_ae_lines_pkg.SetAcctLineType
23573: (p_component_type => l_component_type
23574: ,p_event_type_code => l_event_type_code
23575: ,p_line_definition_owner_code => l_line_definition_owner_code
23576: ,p_line_definition_code => l_line_definition_code
23582: ,p_event_class_code => l_event_class_code);
23583: --
23584: -- set accounting class
23585: --
23586: xla_ae_lines_pkg.SetAcctClass(
23587: p_accounting_class_code => 'RECEIVABLE'
23588: , p_ae_header_id => l_ae_header_id
23589: );
23590:
23590:
23591: --
23592: -- set rounding class
23593: --
23594: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
23595: 'RECEIVABLE';
23596:
23597: --
23598: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23594: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
23595: 'RECEIVABLE';
23596:
23597: --
23598: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23599: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23600: --
23601: -- bulk performance
23602: --
23595: 'RECEIVABLE';
23596:
23597: --
23598: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23599: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23600: --
23601: -- bulk performance
23602: --
23603: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23599: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23600: --
23601: -- bulk performance
23602: --
23603: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23604:
23605: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23606: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23607:
23601: -- bulk performance
23602: --
23603: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23604:
23605: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23606: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23607:
23608: -- 4955764
23609: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23605: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23606: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23607:
23608: -- 4955764
23609: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23610: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
23611:
23612: -- 4458381 Public Sector Enh
23613:
23639: l_rec_acct_attrs.array_num_value(10) := p_source_38;
23640: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
23641: l_rec_acct_attrs.array_char_value(11) := p_source_39;
23642:
23643: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23644: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23645:
23646: ---------------------------------------------------------------------------------------------------------------
23647: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23640: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
23641: l_rec_acct_attrs.array_char_value(11) := p_source_39;
23642:
23643: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23644: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23645:
23646: ---------------------------------------------------------------------------------------------------------------
23647: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23648: ---------------------------------------------------------------------------------------------------------------
23643: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23644: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23645:
23646: ---------------------------------------------------------------------------------------------------------------
23647: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23648: ---------------------------------------------------------------------------------------------------------------
23649: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23650:
23651: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23645:
23646: ---------------------------------------------------------------------------------------------------------------
23647: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23648: ---------------------------------------------------------------------------------------------------------------
23649: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23650:
23651: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23652: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23653:
23647: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23648: ---------------------------------------------------------------------------------------------------------------
23649: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23650:
23651: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23652: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23653:
23654: IF xla_accounting_cache_pkg.GetValueChar
23655: (p_source_code => 'LEDGER_CATEGORY_CODE'
23648: ---------------------------------------------------------------------------------------------------------------
23649: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23650:
23651: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23652: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23653:
23654: IF xla_accounting_cache_pkg.GetValueChar
23655: (p_source_code => 'LEDGER_CATEGORY_CODE'
23656: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
23659: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
23660: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
23661: )
23662: THEN
23663: xla_ae_lines_pkg.BflowUpgEntry
23664: (p_business_method_code => l_bflow_method_code
23665: ,p_business_class_code => l_bflow_class_code
23666: ,p_balance_type => l_balance_type_code);
23667: ELSE
23699: , x_value_type_code => l_adr_value_type_code
23700: , p_side => 'NA'
23701: );
23702:
23703: xla_ae_lines_pkg.set_ccid(
23704: p_code_combination_id => l_ccid
23705: , p_value_type_code => l_adr_value_type_code
23706: , p_transaction_coa_id => l_adr_transaction_coa_id
23707: , p_accounting_coa_id => l_adr_accounting_coa_id
23735: xla_accounting_err_pkg.build_message
23736: (p_appli_s_name => 'XLA'
23737: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
23738: ,p_token_1 => 'LINE_NUMBER'
23739: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
23740: ,p_token_2 => 'LINE_TYPE_NAME'
23741: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
23742: l_component_type
23743: ,l_component_code
23771: --
23772: --
23773: ------------------------------------------------------------------------------------------------
23774: -- 4219869 Business Flow
23775: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
23776: -- Prior Entry. Currently, the following code is always generated.
23777: ------------------------------------------------------------------------------------------------
23778: XLA_AE_LINES_PKG.ValidateCurrentLine;
23779:
23774: -- 4219869 Business Flow
23775: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
23776: -- Prior Entry. Currently, the following code is always generated.
23777: ------------------------------------------------------------------------------------------------
23778: XLA_AE_LINES_PKG.ValidateCurrentLine;
23779:
23780: ------------------------------------------------------------------------------------
23781: -- 4219869 Business Flow
23782: -- Populated credit and debit amounts -- Need to generate this within IF
23780: ------------------------------------------------------------------------------------
23781: -- 4219869 Business Flow
23782: -- Populated credit and debit amounts -- Need to generate this within IF
23783: ------------------------------------------------------------------------------------
23784: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23785:
23786: ----------------------------------------------------------------------------------
23787: -- 4219869 Business Flow
23788: -- Update journal entry status -- Need to generate this within IF
23812: -- To allow MPA report to determine if it should generate report process
23813: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
23814: ------------------------------------------------------------------------------------------
23815:
23816: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
23817: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
23818: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
23819: -- call ADRs
23820: -- Bug 4922099
23813: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
23814: ------------------------------------------------------------------------------------------
23815:
23816: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
23817: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
23818: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
23819: -- call ADRs
23820: -- Bug 4922099
23821: --
23837: , x_value_type_code => l_adr_value_type_code
23838: , p_side => 'NA'
23839: );
23840:
23841: xla_ae_lines_pkg.set_ccid(
23842: p_code_combination_id => l_ccid
23843: , p_value_type_code => l_adr_value_type_code
23844: , p_transaction_coa_id => l_adr_transaction_coa_id
23845: , p_accounting_coa_id => l_adr_accounting_coa_id
23860:
23861: --
23862: -- Update the line information that should be overwritten
23863: --
23864: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23865: p_header_num => 1);
23866: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23867:
23868: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23862: -- Update the line information that should be overwritten
23863: --
23864: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23865: p_header_num => 1);
23866: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23867:
23868: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23869:
23870: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23864: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23865: p_header_num => 1);
23866: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23867:
23868: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23869:
23870: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23871: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
23872: END IF;
23867:
23868: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23869:
23870: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23871: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
23872: END IF;
23873:
23874: --
23875: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
23874: --
23875: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
23876: --
23877: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
23878: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
23879: ELSE
23880: ---------------------------------------------------------------------------------------------------
23881: -- 4262811a Switch Sign
23882: ---------------------------------------------------------------------------------------------------
23879: ELSE
23880: ---------------------------------------------------------------------------------------------------
23881: -- 4262811a Switch Sign
23882: ---------------------------------------------------------------------------------------------------
23883: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23884: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23885: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23886: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23887: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23880: ---------------------------------------------------------------------------------------------------
23881: -- 4262811a Switch Sign
23882: ---------------------------------------------------------------------------------------------------
23883: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23884: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23885: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23886: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23887: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23888: -- 5132302
23881: -- 4262811a Switch Sign
23882: ---------------------------------------------------------------------------------------------------
23883: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23884: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23885: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23886: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23887: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23888: -- 5132302
23889: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23882: ---------------------------------------------------------------------------------------------------
23883: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23884: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23885: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23886: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23887: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23888: -- 5132302
23889: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23890: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23883: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23884: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23885: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23886: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23887: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23888: -- 5132302
23889: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23890: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23891:
23885: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23886: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23887: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23888: -- 5132302
23889: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23890: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23891:
23892: END IF;
23893:
23886: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23887: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23888: -- 5132302
23889: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23890: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23891:
23892: END IF;
23893:
23894: -- 4955764
23891:
23892: END IF;
23893:
23894: -- 4955764
23895: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23896: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23897:
23898:
23899: XLA_AE_LINES_PKG.ValidateCurrentLine;
23895: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23896: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23897:
23898:
23899: XLA_AE_LINES_PKG.ValidateCurrentLine;
23900: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23901:
23902: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
23903: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
23896: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23897:
23898:
23899: XLA_AE_LINES_PKG.ValidateCurrentLine;
23900: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23901:
23902: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
23903: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
23904: ,p_balance_type_code => l_balance_type_code);
24035: --
24036: -- bulk performance
24037: --
24038: l_balance_type_code VARCHAR2(1);
24039: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
24040: l_log_module VARCHAR2(240);
24041:
24042: --
24043: -- Upgrade strategy
24103: ') = 'REV'
24104: THEN
24105:
24106: --
24107: XLA_AE_LINES_PKG.SetNewLine;
24108:
24109: p_balance_type_code := l_balance_type_code;
24110: -- set the flag so later we will know whether the gain loss line needs to be created
24111:
24115:
24116: --
24117: -- bulk performance
24118: --
24119: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
24120: p_header_num => 0); -- 4262811
24121: --
24122: -- set accounting line options
24123: --
24120: p_header_num => 0); -- 4262811
24121: --
24122: -- set accounting line options
24123: --
24124: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
24125: p_natural_side_code => 'C'
24126: , p_gain_or_loss_flag => 'N'
24127: , p_gl_transfer_mode_code => 'S'
24128: , p_acct_entry_type_code => 'A'
24134: --
24135: --
24136: -- set accounting line type info
24137: --
24138: xla_ae_lines_pkg.SetAcctLineType
24139: (p_component_type => l_component_type
24140: ,p_event_type_code => l_event_type_code
24141: ,p_line_definition_owner_code => l_line_definition_owner_code
24142: ,p_line_definition_code => l_line_definition_code
24148: ,p_event_class_code => l_event_class_code);
24149: --
24150: -- set accounting class
24151: --
24152: xla_ae_lines_pkg.SetAcctClass(
24153: p_accounting_class_code => 'ACCRUAL'
24154: , p_ae_header_id => l_ae_header_id
24155: );
24156:
24156:
24157: --
24158: -- set rounding class
24159: --
24160: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
24161: 'RECEIVABLE';
24162:
24163: --
24164: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24160: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
24161: 'RECEIVABLE';
24162:
24163: --
24164: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24165: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24166: --
24167: -- bulk performance
24168: --
24161: 'RECEIVABLE';
24162:
24163: --
24164: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24165: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24166: --
24167: -- bulk performance
24168: --
24169: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24165: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24166: --
24167: -- bulk performance
24168: --
24169: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24170:
24171: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24172: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24173:
24167: -- bulk performance
24168: --
24169: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24170:
24171: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24172: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24173:
24174: -- 4955764
24175: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24171: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24172: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24173:
24174: -- 4955764
24175: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24176: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
24177:
24178: -- 4458381 Public Sector Enh
24179:
24205: l_rec_acct_attrs.array_num_value(10) := p_source_38;
24206: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
24207: l_rec_acct_attrs.array_char_value(11) := p_source_39;
24208:
24209: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24210: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24211:
24212: ---------------------------------------------------------------------------------------------------------------
24213: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24206: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
24207: l_rec_acct_attrs.array_char_value(11) := p_source_39;
24208:
24209: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24210: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24211:
24212: ---------------------------------------------------------------------------------------------------------------
24213: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24214: ---------------------------------------------------------------------------------------------------------------
24209: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24210: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24211:
24212: ---------------------------------------------------------------------------------------------------------------
24213: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24214: ---------------------------------------------------------------------------------------------------------------
24215: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24216:
24217: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24211:
24212: ---------------------------------------------------------------------------------------------------------------
24213: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24214: ---------------------------------------------------------------------------------------------------------------
24215: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24216:
24217: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24218: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24219:
24213: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24214: ---------------------------------------------------------------------------------------------------------------
24215: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24216:
24217: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24218: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24219:
24220: IF xla_accounting_cache_pkg.GetValueChar
24221: (p_source_code => 'LEDGER_CATEGORY_CODE'
24214: ---------------------------------------------------------------------------------------------------------------
24215: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24216:
24217: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24218: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24219:
24220: IF xla_accounting_cache_pkg.GetValueChar
24221: (p_source_code => 'LEDGER_CATEGORY_CODE'
24222: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
24225: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
24226: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
24227: )
24228: THEN
24229: xla_ae_lines_pkg.BflowUpgEntry
24230: (p_business_method_code => l_bflow_method_code
24231: ,p_business_class_code => l_bflow_class_code
24232: ,p_balance_type => l_balance_type_code);
24233: ELSE
24265: , x_value_type_code => l_adr_value_type_code
24266: , p_side => 'NA'
24267: );
24268:
24269: xla_ae_lines_pkg.set_ccid(
24270: p_code_combination_id => l_ccid
24271: , p_value_type_code => l_adr_value_type_code
24272: , p_transaction_coa_id => l_adr_transaction_coa_id
24273: , p_accounting_coa_id => l_adr_accounting_coa_id
24301: xla_accounting_err_pkg.build_message
24302: (p_appli_s_name => 'XLA'
24303: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
24304: ,p_token_1 => 'LINE_NUMBER'
24305: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
24306: ,p_token_2 => 'LINE_TYPE_NAME'
24307: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
24308: l_component_type
24309: ,l_component_code
24337: --
24338: --
24339: ------------------------------------------------------------------------------------------------
24340: -- 4219869 Business Flow
24341: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
24342: -- Prior Entry. Currently, the following code is always generated.
24343: ------------------------------------------------------------------------------------------------
24344: XLA_AE_LINES_PKG.ValidateCurrentLine;
24345:
24340: -- 4219869 Business Flow
24341: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
24342: -- Prior Entry. Currently, the following code is always generated.
24343: ------------------------------------------------------------------------------------------------
24344: XLA_AE_LINES_PKG.ValidateCurrentLine;
24345:
24346: ------------------------------------------------------------------------------------
24347: -- 4219869 Business Flow
24348: -- Populated credit and debit amounts -- Need to generate this within IF
24346: ------------------------------------------------------------------------------------
24347: -- 4219869 Business Flow
24348: -- Populated credit and debit amounts -- Need to generate this within IF
24349: ------------------------------------------------------------------------------------
24350: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
24351:
24352: ----------------------------------------------------------------------------------
24353: -- 4219869 Business Flow
24354: -- Update journal entry status -- Need to generate this within IF
24378: -- To allow MPA report to determine if it should generate report process
24379: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
24380: ------------------------------------------------------------------------------------------
24381:
24382: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
24383: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
24384: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
24385: -- call ADRs
24386: -- Bug 4922099
24379: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
24380: ------------------------------------------------------------------------------------------
24381:
24382: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
24383: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
24384: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
24385: -- call ADRs
24386: -- Bug 4922099
24387: --
24403: , x_value_type_code => l_adr_value_type_code
24404: , p_side => 'NA'
24405: );
24406:
24407: xla_ae_lines_pkg.set_ccid(
24408: p_code_combination_id => l_ccid
24409: , p_value_type_code => l_adr_value_type_code
24410: , p_transaction_coa_id => l_adr_transaction_coa_id
24411: , p_accounting_coa_id => l_adr_accounting_coa_id
24426:
24427: --
24428: -- Update the line information that should be overwritten
24429: --
24430: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
24431: p_header_num => 1);
24432: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
24433:
24434: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24428: -- Update the line information that should be overwritten
24429: --
24430: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
24431: p_header_num => 1);
24432: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
24433:
24434: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24435:
24436: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
24430: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
24431: p_header_num => 1);
24432: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
24433:
24434: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24435:
24436: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
24437: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
24438: END IF;
24433:
24434: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24435:
24436: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
24437: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
24438: END IF;
24439:
24440: --
24441: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
24440: --
24441: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
24442: --
24443: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
24444: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
24445: ELSE
24446: ---------------------------------------------------------------------------------------------------
24447: -- 4262811a Switch Sign
24448: ---------------------------------------------------------------------------------------------------
24445: ELSE
24446: ---------------------------------------------------------------------------------------------------
24447: -- 4262811a Switch Sign
24448: ---------------------------------------------------------------------------------------------------
24449: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24450: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24451: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24452: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24453: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24446: ---------------------------------------------------------------------------------------------------
24447: -- 4262811a Switch Sign
24448: ---------------------------------------------------------------------------------------------------
24449: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24450: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24451: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24452: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24453: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24454: -- 5132302
24447: -- 4262811a Switch Sign
24448: ---------------------------------------------------------------------------------------------------
24449: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24450: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24451: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24452: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24453: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24454: -- 5132302
24455: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24448: ---------------------------------------------------------------------------------------------------
24449: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24450: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24451: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24452: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24453: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24454: -- 5132302
24455: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24456: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24449: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24450: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24451: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24452: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24453: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24454: -- 5132302
24455: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24456: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24457:
24451: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24452: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24453: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24454: -- 5132302
24455: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24456: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24457:
24458: END IF;
24459:
24452: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24453: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24454: -- 5132302
24455: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24456: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24457:
24458: END IF;
24459:
24460: -- 4955764
24457:
24458: END IF;
24459:
24460: -- 4955764
24461: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24462: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
24463:
24464:
24465: XLA_AE_LINES_PKG.ValidateCurrentLine;
24461: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24462: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
24463:
24464:
24465: XLA_AE_LINES_PKG.ValidateCurrentLine;
24466: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
24467:
24468: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
24469: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
24462: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
24463:
24464:
24465: XLA_AE_LINES_PKG.ValidateCurrentLine;
24466: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
24467:
24468: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
24469: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
24470: ,p_balance_type_code => l_balance_type_code);
24603: --
24604: -- bulk performance
24605: --
24606: l_balance_type_code VARCHAR2(1);
24607: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
24608: l_log_module VARCHAR2(240);
24609:
24610: --
24611: -- Upgrade strategy
24671: ') = 'CHARGES'
24672: THEN
24673:
24674: --
24675: XLA_AE_LINES_PKG.SetNewLine;
24676:
24677: p_balance_type_code := l_balance_type_code;
24678: -- set the flag so later we will know whether the gain loss line needs to be created
24679:
24683:
24684: --
24685: -- bulk performance
24686: --
24687: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
24688: p_header_num => 0); -- 4262811
24689: --
24690: -- set accounting line options
24691: --
24688: p_header_num => 0); -- 4262811
24689: --
24690: -- set accounting line options
24691: --
24692: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
24693: p_natural_side_code => 'C'
24694: , p_gain_or_loss_flag => 'N'
24695: , p_gl_transfer_mode_code => 'S'
24696: , p_acct_entry_type_code => 'A'
24702: --
24703: --
24704: -- set accounting line type info
24705: --
24706: xla_ae_lines_pkg.SetAcctLineType
24707: (p_component_type => l_component_type
24708: ,p_event_type_code => l_event_type_code
24709: ,p_line_definition_owner_code => l_line_definition_owner_code
24710: ,p_line_definition_code => l_line_definition_code
24716: ,p_event_class_code => l_event_class_code);
24717: --
24718: -- set accounting class
24719: --
24720: xla_ae_lines_pkg.SetAcctClass(
24721: p_accounting_class_code => 'CHARGES'
24722: , p_ae_header_id => l_ae_header_id
24723: );
24724:
24724:
24725: --
24726: -- set rounding class
24727: --
24728: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
24729: 'RECEIVABLE';
24730:
24731: --
24732: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24728: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
24729: 'RECEIVABLE';
24730:
24731: --
24732: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24733: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24734: --
24735: -- bulk performance
24736: --
24729: 'RECEIVABLE';
24730:
24731: --
24732: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24733: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24734: --
24735: -- bulk performance
24736: --
24737: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24733: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24734: --
24735: -- bulk performance
24736: --
24737: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24738:
24739: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24740: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24741:
24735: -- bulk performance
24736: --
24737: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24738:
24739: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24740: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24741:
24742: -- 4955764
24743: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24739: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24740: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24741:
24742: -- 4955764
24743: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24744: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
24745:
24746: -- 4458381 Public Sector Enh
24747:
24775: l_rec_acct_attrs.array_char_value(11) := p_source_39;
24776: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
24777: l_rec_acct_attrs.array_num_value(12) := p_source_86;
24778:
24779: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24780: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24781:
24782: ---------------------------------------------------------------------------------------------------------------
24783: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24776: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
24777: l_rec_acct_attrs.array_num_value(12) := p_source_86;
24778:
24779: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24780: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24781:
24782: ---------------------------------------------------------------------------------------------------------------
24783: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24784: ---------------------------------------------------------------------------------------------------------------
24779: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24780: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24781:
24782: ---------------------------------------------------------------------------------------------------------------
24783: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24784: ---------------------------------------------------------------------------------------------------------------
24785: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24786:
24787: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24781:
24782: ---------------------------------------------------------------------------------------------------------------
24783: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24784: ---------------------------------------------------------------------------------------------------------------
24785: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24786:
24787: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24788: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24789:
24783: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24784: ---------------------------------------------------------------------------------------------------------------
24785: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24786:
24787: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24788: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24789:
24790: IF xla_accounting_cache_pkg.GetValueChar
24791: (p_source_code => 'LEDGER_CATEGORY_CODE'
24784: ---------------------------------------------------------------------------------------------------------------
24785: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24786:
24787: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24788: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24789:
24790: IF xla_accounting_cache_pkg.GetValueChar
24791: (p_source_code => 'LEDGER_CATEGORY_CODE'
24792: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
24795: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
24796: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
24797: )
24798: THEN
24799: xla_ae_lines_pkg.BflowUpgEntry
24800: (p_business_method_code => l_bflow_method_code
24801: ,p_business_class_code => l_bflow_class_code
24802: ,p_balance_type => l_balance_type_code);
24803: ELSE
24835: , x_value_type_code => l_adr_value_type_code
24836: , p_side => 'NA'
24837: );
24838:
24839: xla_ae_lines_pkg.set_ccid(
24840: p_code_combination_id => l_ccid
24841: , p_value_type_code => l_adr_value_type_code
24842: , p_transaction_coa_id => l_adr_transaction_coa_id
24843: , p_accounting_coa_id => l_adr_accounting_coa_id
24871: xla_accounting_err_pkg.build_message
24872: (p_appli_s_name => 'XLA'
24873: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
24874: ,p_token_1 => 'LINE_NUMBER'
24875: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
24876: ,p_token_2 => 'LINE_TYPE_NAME'
24877: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
24878: l_component_type
24879: ,l_component_code
24907: --
24908: --
24909: ------------------------------------------------------------------------------------------------
24910: -- 4219869 Business Flow
24911: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
24912: -- Prior Entry. Currently, the following code is always generated.
24913: ------------------------------------------------------------------------------------------------
24914: XLA_AE_LINES_PKG.ValidateCurrentLine;
24915:
24910: -- 4219869 Business Flow
24911: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
24912: -- Prior Entry. Currently, the following code is always generated.
24913: ------------------------------------------------------------------------------------------------
24914: XLA_AE_LINES_PKG.ValidateCurrentLine;
24915:
24916: ------------------------------------------------------------------------------------
24917: -- 4219869 Business Flow
24918: -- Populated credit and debit amounts -- Need to generate this within IF
24916: ------------------------------------------------------------------------------------
24917: -- 4219869 Business Flow
24918: -- Populated credit and debit amounts -- Need to generate this within IF
24919: ------------------------------------------------------------------------------------
24920: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
24921:
24922: ----------------------------------------------------------------------------------
24923: -- 4219869 Business Flow
24924: -- Update journal entry status -- Need to generate this within IF
24948: -- To allow MPA report to determine if it should generate report process
24949: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
24950: ------------------------------------------------------------------------------------------
24951:
24952: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
24953: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
24954: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
24955: -- call ADRs
24956: -- Bug 4922099
24949: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
24950: ------------------------------------------------------------------------------------------
24951:
24952: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
24953: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
24954: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
24955: -- call ADRs
24956: -- Bug 4922099
24957: --
24973: , x_value_type_code => l_adr_value_type_code
24974: , p_side => 'NA'
24975: );
24976:
24977: xla_ae_lines_pkg.set_ccid(
24978: p_code_combination_id => l_ccid
24979: , p_value_type_code => l_adr_value_type_code
24980: , p_transaction_coa_id => l_adr_transaction_coa_id
24981: , p_accounting_coa_id => l_adr_accounting_coa_id
24996:
24997: --
24998: -- Update the line information that should be overwritten
24999: --
25000: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25001: p_header_num => 1);
25002: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25003:
25004: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24998: -- Update the line information that should be overwritten
24999: --
25000: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25001: p_header_num => 1);
25002: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25003:
25004: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25005:
25006: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25000: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25001: p_header_num => 1);
25002: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25003:
25004: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25005:
25006: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25007: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
25008: END IF;
25003:
25004: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25005:
25006: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25007: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
25008: END IF;
25009:
25010: --
25011: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
25010: --
25011: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
25012: --
25013: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
25014: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
25015: ELSE
25016: ---------------------------------------------------------------------------------------------------
25017: -- 4262811a Switch Sign
25018: ---------------------------------------------------------------------------------------------------
25015: ELSE
25016: ---------------------------------------------------------------------------------------------------
25017: -- 4262811a Switch Sign
25018: ---------------------------------------------------------------------------------------------------
25019: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25020: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25021: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25022: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25023: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25016: ---------------------------------------------------------------------------------------------------
25017: -- 4262811a Switch Sign
25018: ---------------------------------------------------------------------------------------------------
25019: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25020: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25021: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25022: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25023: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25024: -- 5132302
25017: -- 4262811a Switch Sign
25018: ---------------------------------------------------------------------------------------------------
25019: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25020: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25021: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25022: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25023: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25024: -- 5132302
25025: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25018: ---------------------------------------------------------------------------------------------------
25019: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25020: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25021: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25022: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25023: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25024: -- 5132302
25025: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25026: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25019: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25020: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25021: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25022: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25023: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25024: -- 5132302
25025: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25026: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25027:
25021: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25022: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25023: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25024: -- 5132302
25025: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25026: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25027:
25028: END IF;
25029:
25022: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25023: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25024: -- 5132302
25025: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25026: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25027:
25028: END IF;
25029:
25030: -- 4955764
25027:
25028: END IF;
25029:
25030: -- 4955764
25031: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25032: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25033:
25034:
25035: XLA_AE_LINES_PKG.ValidateCurrentLine;
25031: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25032: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25033:
25034:
25035: XLA_AE_LINES_PKG.ValidateCurrentLine;
25036: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
25037:
25038: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
25039: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
25032: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25033:
25034:
25035: XLA_AE_LINES_PKG.ValidateCurrentLine;
25036: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
25037:
25038: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
25039: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
25040: ,p_balance_type_code => l_balance_type_code);
25173: --
25174: -- bulk performance
25175: --
25176: l_balance_type_code VARCHAR2(1);
25177: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
25178: l_log_module VARCHAR2(240);
25179:
25180: --
25181: -- Upgrade strategy
25241: ') = 'REC'
25242: THEN
25243:
25244: --
25245: XLA_AE_LINES_PKG.SetNewLine;
25246:
25247: p_balance_type_code := l_balance_type_code;
25248: -- set the flag so later we will know whether the gain loss line needs to be created
25249:
25253:
25254: --
25255: -- bulk performance
25256: --
25257: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
25258: p_header_num => 0); -- 4262811
25259: --
25260: -- set accounting line options
25261: --
25258: p_header_num => 0); -- 4262811
25259: --
25260: -- set accounting line options
25261: --
25262: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
25263: p_natural_side_code => 'D'
25264: , p_gain_or_loss_flag => 'N'
25265: , p_gl_transfer_mode_code => 'S'
25266: , p_acct_entry_type_code => 'A'
25272: --
25273: --
25274: -- set accounting line type info
25275: --
25276: xla_ae_lines_pkg.SetAcctLineType
25277: (p_component_type => l_component_type
25278: ,p_event_type_code => l_event_type_code
25279: ,p_line_definition_owner_code => l_line_definition_owner_code
25280: ,p_line_definition_code => l_line_definition_code
25286: ,p_event_class_code => l_event_class_code);
25287: --
25288: -- set accounting class
25289: --
25290: xla_ae_lines_pkg.SetAcctClass(
25291: p_accounting_class_code => 'RECEIVABLE'
25292: , p_ae_header_id => l_ae_header_id
25293: );
25294:
25294:
25295: --
25296: -- set rounding class
25297: --
25298: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
25299: 'RECEIVABLE';
25300:
25301: --
25302: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
25298: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
25299: 'RECEIVABLE';
25300:
25301: --
25302: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
25303: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
25304: --
25305: -- bulk performance
25306: --
25299: 'RECEIVABLE';
25300:
25301: --
25302: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
25303: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
25304: --
25305: -- bulk performance
25306: --
25307: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
25303: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
25304: --
25305: -- bulk performance
25306: --
25307: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
25308:
25309: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
25310: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
25311:
25305: -- bulk performance
25306: --
25307: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
25308:
25309: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
25310: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
25311:
25312: -- 4955764
25313: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25309: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
25310: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
25311:
25312: -- 4955764
25313: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25314: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
25315:
25316: -- 4458381 Public Sector Enh
25317:
25345: l_rec_acct_attrs.array_char_value(11) := p_source_39;
25346: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
25347: l_rec_acct_attrs.array_num_value(12) := p_source_86;
25348:
25349: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
25350: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
25351:
25352: ---------------------------------------------------------------------------------------------------------------
25353: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25346: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
25347: l_rec_acct_attrs.array_num_value(12) := p_source_86;
25348:
25349: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
25350: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
25351:
25352: ---------------------------------------------------------------------------------------------------------------
25353: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25354: ---------------------------------------------------------------------------------------------------------------
25349: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
25350: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
25351:
25352: ---------------------------------------------------------------------------------------------------------------
25353: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25354: ---------------------------------------------------------------------------------------------------------------
25355: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25356:
25357: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25351:
25352: ---------------------------------------------------------------------------------------------------------------
25353: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25354: ---------------------------------------------------------------------------------------------------------------
25355: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25356:
25357: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25358: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25359:
25353: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25354: ---------------------------------------------------------------------------------------------------------------
25355: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25356:
25357: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25358: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25359:
25360: IF xla_accounting_cache_pkg.GetValueChar
25361: (p_source_code => 'LEDGER_CATEGORY_CODE'
25354: ---------------------------------------------------------------------------------------------------------------
25355: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25356:
25357: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25358: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25359:
25360: IF xla_accounting_cache_pkg.GetValueChar
25361: (p_source_code => 'LEDGER_CATEGORY_CODE'
25362: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
25365: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
25366: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
25367: )
25368: THEN
25369: xla_ae_lines_pkg.BflowUpgEntry
25370: (p_business_method_code => l_bflow_method_code
25371: ,p_business_class_code => l_bflow_class_code
25372: ,p_balance_type => l_balance_type_code);
25373: ELSE
25405: , x_value_type_code => l_adr_value_type_code
25406: , p_side => 'NA'
25407: );
25408:
25409: xla_ae_lines_pkg.set_ccid(
25410: p_code_combination_id => l_ccid
25411: , p_value_type_code => l_adr_value_type_code
25412: , p_transaction_coa_id => l_adr_transaction_coa_id
25413: , p_accounting_coa_id => l_adr_accounting_coa_id
25441: xla_accounting_err_pkg.build_message
25442: (p_appli_s_name => 'XLA'
25443: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
25444: ,p_token_1 => 'LINE_NUMBER'
25445: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
25446: ,p_token_2 => 'LINE_TYPE_NAME'
25447: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
25448: l_component_type
25449: ,l_component_code
25477: --
25478: --
25479: ------------------------------------------------------------------------------------------------
25480: -- 4219869 Business Flow
25481: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
25482: -- Prior Entry. Currently, the following code is always generated.
25483: ------------------------------------------------------------------------------------------------
25484: XLA_AE_LINES_PKG.ValidateCurrentLine;
25485:
25480: -- 4219869 Business Flow
25481: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
25482: -- Prior Entry. Currently, the following code is always generated.
25483: ------------------------------------------------------------------------------------------------
25484: XLA_AE_LINES_PKG.ValidateCurrentLine;
25485:
25486: ------------------------------------------------------------------------------------
25487: -- 4219869 Business Flow
25488: -- Populated credit and debit amounts -- Need to generate this within IF
25486: ------------------------------------------------------------------------------------
25487: -- 4219869 Business Flow
25488: -- Populated credit and debit amounts -- Need to generate this within IF
25489: ------------------------------------------------------------------------------------
25490: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
25491:
25492: ----------------------------------------------------------------------------------
25493: -- 4219869 Business Flow
25494: -- Update journal entry status -- Need to generate this within IF
25518: -- To allow MPA report to determine if it should generate report process
25519: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
25520: ------------------------------------------------------------------------------------------
25521:
25522: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
25523: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
25524: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
25525: -- call ADRs
25526: -- Bug 4922099
25519: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
25520: ------------------------------------------------------------------------------------------
25521:
25522: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
25523: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
25524: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
25525: -- call ADRs
25526: -- Bug 4922099
25527: --
25543: , x_value_type_code => l_adr_value_type_code
25544: , p_side => 'NA'
25545: );
25546:
25547: xla_ae_lines_pkg.set_ccid(
25548: p_code_combination_id => l_ccid
25549: , p_value_type_code => l_adr_value_type_code
25550: , p_transaction_coa_id => l_adr_transaction_coa_id
25551: , p_accounting_coa_id => l_adr_accounting_coa_id
25566:
25567: --
25568: -- Update the line information that should be overwritten
25569: --
25570: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25571: p_header_num => 1);
25572: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25573:
25574: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25568: -- Update the line information that should be overwritten
25569: --
25570: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25571: p_header_num => 1);
25572: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25573:
25574: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25575:
25576: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25570: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25571: p_header_num => 1);
25572: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25573:
25574: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25575:
25576: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25577: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
25578: END IF;
25573:
25574: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25575:
25576: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25577: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
25578: END IF;
25579:
25580: --
25581: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
25580: --
25581: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
25582: --
25583: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
25584: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
25585: ELSE
25586: ---------------------------------------------------------------------------------------------------
25587: -- 4262811a Switch Sign
25588: ---------------------------------------------------------------------------------------------------
25585: ELSE
25586: ---------------------------------------------------------------------------------------------------
25587: -- 4262811a Switch Sign
25588: ---------------------------------------------------------------------------------------------------
25589: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25591: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25593: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25586: ---------------------------------------------------------------------------------------------------
25587: -- 4262811a Switch Sign
25588: ---------------------------------------------------------------------------------------------------
25589: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25591: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25593: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25594: -- 5132302
25587: -- 4262811a Switch Sign
25588: ---------------------------------------------------------------------------------------------------
25589: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25591: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25593: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25594: -- 5132302
25595: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25588: ---------------------------------------------------------------------------------------------------
25589: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25591: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25593: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25594: -- 5132302
25595: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25596: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25589: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25591: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25593: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25594: -- 5132302
25595: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25596: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25597:
25591: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25593: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25594: -- 5132302
25595: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25596: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25597:
25598: END IF;
25599:
25592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25593: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25594: -- 5132302
25595: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25596: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25597:
25598: END IF;
25599:
25600: -- 4955764
25597:
25598: END IF;
25599:
25600: -- 4955764
25601: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25602: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25603:
25604:
25605: XLA_AE_LINES_PKG.ValidateCurrentLine;
25601: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25602: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25603:
25604:
25605: XLA_AE_LINES_PKG.ValidateCurrentLine;
25606: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
25607:
25608: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
25609: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
25602: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25603:
25604:
25605: XLA_AE_LINES_PKG.ValidateCurrentLine;
25606: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
25607:
25608: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
25609: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
25610: ,p_balance_type_code => l_balance_type_code);
25743: --
25744: -- bulk performance
25745: --
25746: l_balance_type_code VARCHAR2(1);
25747: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
25748: l_log_module VARCHAR2(240);
25749:
25750: --
25751: -- Upgrade strategy
25811: ') = 'FREIGHT'
25812: THEN
25813:
25814: --
25815: XLA_AE_LINES_PKG.SetNewLine;
25816:
25817: p_balance_type_code := l_balance_type_code;
25818: -- set the flag so later we will know whether the gain loss line needs to be created
25819:
25823:
25824: --
25825: -- bulk performance
25826: --
25827: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
25828: p_header_num => 0); -- 4262811
25829: --
25830: -- set accounting line options
25831: --
25828: p_header_num => 0); -- 4262811
25829: --
25830: -- set accounting line options
25831: --
25832: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
25833: p_natural_side_code => 'C'
25834: , p_gain_or_loss_flag => 'N'
25835: , p_gl_transfer_mode_code => 'S'
25836: , p_acct_entry_type_code => 'A'
25842: --
25843: --
25844: -- set accounting line type info
25845: --
25846: xla_ae_lines_pkg.SetAcctLineType
25847: (p_component_type => l_component_type
25848: ,p_event_type_code => l_event_type_code
25849: ,p_line_definition_owner_code => l_line_definition_owner_code
25850: ,p_line_definition_code => l_line_definition_code
25856: ,p_event_class_code => l_event_class_code);
25857: --
25858: -- set accounting class
25859: --
25860: xla_ae_lines_pkg.SetAcctClass(
25861: p_accounting_class_code => 'FREIGHT'
25862: , p_ae_header_id => l_ae_header_id
25863: );
25864:
25864:
25865: --
25866: -- set rounding class
25867: --
25868: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
25869: 'RECEIVABLE';
25870:
25871: --
25872: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
25868: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
25869: 'RECEIVABLE';
25870:
25871: --
25872: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
25873: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
25874: --
25875: -- bulk performance
25876: --
25869: 'RECEIVABLE';
25870:
25871: --
25872: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
25873: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
25874: --
25875: -- bulk performance
25876: --
25877: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
25873: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
25874: --
25875: -- bulk performance
25876: --
25877: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
25878:
25879: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
25880: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
25881:
25875: -- bulk performance
25876: --
25877: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
25878:
25879: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
25880: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
25881:
25882: -- 4955764
25883: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25879: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
25880: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
25881:
25882: -- 4955764
25883: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25884: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
25885:
25886: -- 4458381 Public Sector Enh
25887:
25915: l_rec_acct_attrs.array_char_value(11) := p_source_39;
25916: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
25917: l_rec_acct_attrs.array_num_value(12) := p_source_86;
25918:
25919: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
25920: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
25921:
25922: ---------------------------------------------------------------------------------------------------------------
25923: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25916: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
25917: l_rec_acct_attrs.array_num_value(12) := p_source_86;
25918:
25919: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
25920: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
25921:
25922: ---------------------------------------------------------------------------------------------------------------
25923: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25924: ---------------------------------------------------------------------------------------------------------------
25919: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
25920: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
25921:
25922: ---------------------------------------------------------------------------------------------------------------
25923: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25924: ---------------------------------------------------------------------------------------------------------------
25925: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25926:
25927: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25921:
25922: ---------------------------------------------------------------------------------------------------------------
25923: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25924: ---------------------------------------------------------------------------------------------------------------
25925: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25926:
25927: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25928: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25929:
25923: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25924: ---------------------------------------------------------------------------------------------------------------
25925: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25926:
25927: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25928: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25929:
25930: IF xla_accounting_cache_pkg.GetValueChar
25931: (p_source_code => 'LEDGER_CATEGORY_CODE'
25924: ---------------------------------------------------------------------------------------------------------------
25925: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25926:
25927: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25928: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25929:
25930: IF xla_accounting_cache_pkg.GetValueChar
25931: (p_source_code => 'LEDGER_CATEGORY_CODE'
25932: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
25935: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
25936: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
25937: )
25938: THEN
25939: xla_ae_lines_pkg.BflowUpgEntry
25940: (p_business_method_code => l_bflow_method_code
25941: ,p_business_class_code => l_bflow_class_code
25942: ,p_balance_type => l_balance_type_code);
25943: ELSE
25975: , x_value_type_code => l_adr_value_type_code
25976: , p_side => 'NA'
25977: );
25978:
25979: xla_ae_lines_pkg.set_ccid(
25980: p_code_combination_id => l_ccid
25981: , p_value_type_code => l_adr_value_type_code
25982: , p_transaction_coa_id => l_adr_transaction_coa_id
25983: , p_accounting_coa_id => l_adr_accounting_coa_id
26011: xla_accounting_err_pkg.build_message
26012: (p_appli_s_name => 'XLA'
26013: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
26014: ,p_token_1 => 'LINE_NUMBER'
26015: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
26016: ,p_token_2 => 'LINE_TYPE_NAME'
26017: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
26018: l_component_type
26019: ,l_component_code
26047: --
26048: --
26049: ------------------------------------------------------------------------------------------------
26050: -- 4219869 Business Flow
26051: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
26052: -- Prior Entry. Currently, the following code is always generated.
26053: ------------------------------------------------------------------------------------------------
26054: XLA_AE_LINES_PKG.ValidateCurrentLine;
26055:
26050: -- 4219869 Business Flow
26051: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
26052: -- Prior Entry. Currently, the following code is always generated.
26053: ------------------------------------------------------------------------------------------------
26054: XLA_AE_LINES_PKG.ValidateCurrentLine;
26055:
26056: ------------------------------------------------------------------------------------
26057: -- 4219869 Business Flow
26058: -- Populated credit and debit amounts -- Need to generate this within IF
26056: ------------------------------------------------------------------------------------
26057: -- 4219869 Business Flow
26058: -- Populated credit and debit amounts -- Need to generate this within IF
26059: ------------------------------------------------------------------------------------
26060: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
26061:
26062: ----------------------------------------------------------------------------------
26063: -- 4219869 Business Flow
26064: -- Update journal entry status -- Need to generate this within IF
26088: -- To allow MPA report to determine if it should generate report process
26089: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
26090: ------------------------------------------------------------------------------------------
26091:
26092: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
26093: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
26094: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
26095: -- call ADRs
26096: -- Bug 4922099
26089: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
26090: ------------------------------------------------------------------------------------------
26091:
26092: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
26093: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
26094: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
26095: -- call ADRs
26096: -- Bug 4922099
26097: --
26113: , x_value_type_code => l_adr_value_type_code
26114: , p_side => 'NA'
26115: );
26116:
26117: xla_ae_lines_pkg.set_ccid(
26118: p_code_combination_id => l_ccid
26119: , p_value_type_code => l_adr_value_type_code
26120: , p_transaction_coa_id => l_adr_transaction_coa_id
26121: , p_accounting_coa_id => l_adr_accounting_coa_id
26136:
26137: --
26138: -- Update the line information that should be overwritten
26139: --
26140: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
26141: p_header_num => 1);
26142: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
26143:
26144: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26138: -- Update the line information that should be overwritten
26139: --
26140: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
26141: p_header_num => 1);
26142: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
26143:
26144: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26145:
26146: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
26140: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
26141: p_header_num => 1);
26142: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
26143:
26144: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26145:
26146: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
26147: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
26148: END IF;
26143:
26144: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26145:
26146: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
26147: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
26148: END IF;
26149:
26150: --
26151: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
26150: --
26151: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
26152: --
26153: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
26154: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
26155: ELSE
26156: ---------------------------------------------------------------------------------------------------
26157: -- 4262811a Switch Sign
26158: ---------------------------------------------------------------------------------------------------
26155: ELSE
26156: ---------------------------------------------------------------------------------------------------
26157: -- 4262811a Switch Sign
26158: ---------------------------------------------------------------------------------------------------
26159: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26160: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26161: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26162: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26163: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26156: ---------------------------------------------------------------------------------------------------
26157: -- 4262811a Switch Sign
26158: ---------------------------------------------------------------------------------------------------
26159: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26160: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26161: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26162: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26163: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26164: -- 5132302
26157: -- 4262811a Switch Sign
26158: ---------------------------------------------------------------------------------------------------
26159: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26160: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26161: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26162: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26163: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26164: -- 5132302
26165: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26158: ---------------------------------------------------------------------------------------------------
26159: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26160: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26161: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26162: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26163: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26164: -- 5132302
26165: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26166: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26159: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26160: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26161: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26162: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26163: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26164: -- 5132302
26165: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26166: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26167:
26161: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26162: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26163: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26164: -- 5132302
26165: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26166: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26167:
26168: END IF;
26169:
26162: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26163: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26164: -- 5132302
26165: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26166: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26167:
26168: END IF;
26169:
26170: -- 4955764
26167:
26168: END IF;
26169:
26170: -- 4955764
26171: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26172: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
26173:
26174:
26175: XLA_AE_LINES_PKG.ValidateCurrentLine;
26171: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26172: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
26173:
26174:
26175: XLA_AE_LINES_PKG.ValidateCurrentLine;
26176: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
26177:
26178: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
26179: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
26172: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
26173:
26174:
26175: XLA_AE_LINES_PKG.ValidateCurrentLine;
26176: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
26177:
26178: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
26179: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
26180: ,p_balance_type_code => l_balance_type_code);
26315: --
26316: -- bulk performance
26317: --
26318: l_balance_type_code VARCHAR2(1);
26319: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
26320: l_log_module VARCHAR2(240);
26321:
26322: --
26323: -- Upgrade strategy
26383: ') = 'REV'
26384: THEN
26385:
26386: --
26387: XLA_AE_LINES_PKG.SetNewLine;
26388:
26389: p_balance_type_code := l_balance_type_code;
26390: -- set the flag so later we will know whether the gain loss line needs to be created
26391:
26395:
26396: --
26397: -- bulk performance
26398: --
26399: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
26400: p_header_num => 0); -- 4262811
26401: --
26402: -- set accounting line options
26403: --
26400: p_header_num => 0); -- 4262811
26401: --
26402: -- set accounting line options
26403: --
26404: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
26405: p_natural_side_code => 'C'
26406: , p_gain_or_loss_flag => 'N'
26407: , p_gl_transfer_mode_code => 'S'
26408: , p_acct_entry_type_code => 'A'
26414: --
26415: --
26416: -- set accounting line type info
26417: --
26418: xla_ae_lines_pkg.SetAcctLineType
26419: (p_component_type => l_component_type
26420: ,p_event_type_code => l_event_type_code
26421: ,p_line_definition_owner_code => l_line_definition_owner_code
26422: ,p_line_definition_code => l_line_definition_code
26428: ,p_event_class_code => l_event_class_code);
26429: --
26430: -- set accounting class
26431: --
26432: xla_ae_lines_pkg.SetAcctClass(
26433: p_accounting_class_code => 'REVENUE'
26434: , p_ae_header_id => l_ae_header_id
26435: );
26436:
26436:
26437: --
26438: -- set rounding class
26439: --
26440: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
26441: 'RECEIVABLE';
26442:
26443: --
26444: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
26440: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
26441: 'RECEIVABLE';
26442:
26443: --
26444: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
26445: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
26446: --
26447: -- bulk performance
26448: --
26441: 'RECEIVABLE';
26442:
26443: --
26444: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
26445: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
26446: --
26447: -- bulk performance
26448: --
26449: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
26445: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
26446: --
26447: -- bulk performance
26448: --
26449: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
26450:
26451: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
26452: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
26453:
26447: -- bulk performance
26448: --
26449: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
26450:
26451: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
26452: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
26453:
26454: -- 4955764
26455: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26451: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
26452: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
26453:
26454: -- 4955764
26455: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26456: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
26457:
26458: -- 4458381 Public Sector Enh
26459:
26487: l_rec_acct_attrs.array_char_value(11) := p_source_39;
26488: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
26489: l_rec_acct_attrs.array_num_value(12) := p_source_86;
26490:
26491: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
26492: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
26493:
26494: ---------------------------------------------------------------------------------------------------------------
26495: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26488: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
26489: l_rec_acct_attrs.array_num_value(12) := p_source_86;
26490:
26491: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
26492: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
26493:
26494: ---------------------------------------------------------------------------------------------------------------
26495: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26496: ---------------------------------------------------------------------------------------------------------------
26491: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
26492: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
26493:
26494: ---------------------------------------------------------------------------------------------------------------
26495: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26496: ---------------------------------------------------------------------------------------------------------------
26497: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26498:
26499: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26493:
26494: ---------------------------------------------------------------------------------------------------------------
26495: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26496: ---------------------------------------------------------------------------------------------------------------
26497: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26498:
26499: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26500: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26501:
26495: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26496: ---------------------------------------------------------------------------------------------------------------
26497: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26498:
26499: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26500: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26501:
26502: IF xla_accounting_cache_pkg.GetValueChar
26503: (p_source_code => 'LEDGER_CATEGORY_CODE'
26496: ---------------------------------------------------------------------------------------------------------------
26497: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26498:
26499: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26500: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26501:
26502: IF xla_accounting_cache_pkg.GetValueChar
26503: (p_source_code => 'LEDGER_CATEGORY_CODE'
26504: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
26507: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
26508: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
26509: )
26510: THEN
26511: xla_ae_lines_pkg.BflowUpgEntry
26512: (p_business_method_code => l_bflow_method_code
26513: ,p_business_class_code => l_bflow_class_code
26514: ,p_balance_type => l_balance_type_code);
26515: ELSE
26521: -- call analytical criteria
26522: --
26523:
26524:
26525: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
26526: xla_ae_lines_pkg.SetAnalyticalCriteria(
26527: p_analytical_criterion_name => 'Project Number'
26528: , p_analytical_criterion_owner => 'S'
26529: , p_analytical_criterion_code => 'PROJECT_NUMBER'
26522: --
26523:
26524:
26525: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
26526: xla_ae_lines_pkg.SetAnalyticalCriteria(
26527: p_analytical_criterion_name => 'Project Number'
26528: , p_analytical_criterion_owner => 'S'
26529: , p_analytical_criterion_code => 'PROJECT_NUMBER'
26530: , p_amb_context_code => 'DEFAULT'
26565: , x_value_type_code => l_adr_value_type_code
26566: , p_side => 'NA'
26567: );
26568:
26569: xla_ae_lines_pkg.set_ccid(
26570: p_code_combination_id => l_ccid
26571: , p_value_type_code => l_adr_value_type_code
26572: , p_transaction_coa_id => l_adr_transaction_coa_id
26573: , p_accounting_coa_id => l_adr_accounting_coa_id
26601: xla_accounting_err_pkg.build_message
26602: (p_appli_s_name => 'XLA'
26603: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
26604: ,p_token_1 => 'LINE_NUMBER'
26605: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
26606: ,p_token_2 => 'LINE_TYPE_NAME'
26607: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
26608: l_component_type
26609: ,l_component_code
26637: --
26638: --
26639: ------------------------------------------------------------------------------------------------
26640: -- 4219869 Business Flow
26641: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
26642: -- Prior Entry. Currently, the following code is always generated.
26643: ------------------------------------------------------------------------------------------------
26644: XLA_AE_LINES_PKG.ValidateCurrentLine;
26645:
26640: -- 4219869 Business Flow
26641: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
26642: -- Prior Entry. Currently, the following code is always generated.
26643: ------------------------------------------------------------------------------------------------
26644: XLA_AE_LINES_PKG.ValidateCurrentLine;
26645:
26646: ------------------------------------------------------------------------------------
26647: -- 4219869 Business Flow
26648: -- Populated credit and debit amounts -- Need to generate this within IF
26646: ------------------------------------------------------------------------------------
26647: -- 4219869 Business Flow
26648: -- Populated credit and debit amounts -- Need to generate this within IF
26649: ------------------------------------------------------------------------------------
26650: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
26651:
26652: ----------------------------------------------------------------------------------
26653: -- 4219869 Business Flow
26654: -- Update journal entry status -- Need to generate this within IF
26678: -- To allow MPA report to determine if it should generate report process
26679: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
26680: ------------------------------------------------------------------------------------------
26681:
26682: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
26683: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
26684: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
26685: -- call ADRs
26686: -- Bug 4922099
26679: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
26680: ------------------------------------------------------------------------------------------
26681:
26682: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
26683: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
26684: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
26685: -- call ADRs
26686: -- Bug 4922099
26687: --
26703: , x_value_type_code => l_adr_value_type_code
26704: , p_side => 'NA'
26705: );
26706:
26707: xla_ae_lines_pkg.set_ccid(
26708: p_code_combination_id => l_ccid
26709: , p_value_type_code => l_adr_value_type_code
26710: , p_transaction_coa_id => l_adr_transaction_coa_id
26711: , p_accounting_coa_id => l_adr_accounting_coa_id
26726:
26727: --
26728: -- Update the line information that should be overwritten
26729: --
26730: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
26731: p_header_num => 1);
26732: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
26733:
26734: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26728: -- Update the line information that should be overwritten
26729: --
26730: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
26731: p_header_num => 1);
26732: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
26733:
26734: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26735:
26736: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
26730: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
26731: p_header_num => 1);
26732: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
26733:
26734: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26735:
26736: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
26737: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
26738: END IF;
26733:
26734: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26735:
26736: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
26737: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
26738: END IF;
26739:
26740: --
26741: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
26740: --
26741: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
26742: --
26743: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
26744: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
26745: ELSE
26746: ---------------------------------------------------------------------------------------------------
26747: -- 4262811a Switch Sign
26748: ---------------------------------------------------------------------------------------------------
26745: ELSE
26746: ---------------------------------------------------------------------------------------------------
26747: -- 4262811a Switch Sign
26748: ---------------------------------------------------------------------------------------------------
26749: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26750: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26751: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26753: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26746: ---------------------------------------------------------------------------------------------------
26747: -- 4262811a Switch Sign
26748: ---------------------------------------------------------------------------------------------------
26749: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26750: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26751: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26753: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26754: -- 5132302
26747: -- 4262811a Switch Sign
26748: ---------------------------------------------------------------------------------------------------
26749: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26750: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26751: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26753: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26754: -- 5132302
26755: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26748: ---------------------------------------------------------------------------------------------------
26749: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26750: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26751: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26753: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26754: -- 5132302
26755: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26756: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26749: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26750: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26751: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26753: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26754: -- 5132302
26755: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26756: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26757:
26751: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26753: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26754: -- 5132302
26755: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26756: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26757:
26758: END IF;
26759:
26752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26753: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26754: -- 5132302
26755: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26756: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26757:
26758: END IF;
26759:
26760: -- 4955764
26757:
26758: END IF;
26759:
26760: -- 4955764
26761: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26762: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
26763:
26764:
26765: XLA_AE_LINES_PKG.ValidateCurrentLine;
26761: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26762: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
26763:
26764:
26765: XLA_AE_LINES_PKG.ValidateCurrentLine;
26766: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
26767:
26768: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
26769: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
26762: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
26763:
26764:
26765: XLA_AE_LINES_PKG.ValidateCurrentLine;
26766: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
26767:
26768: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
26769: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
26770: ,p_balance_type_code => l_balance_type_code);
26903: --
26904: -- bulk performance
26905: --
26906: l_balance_type_code VARCHAR2(1);
26907: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
26908: l_log_module VARCHAR2(240);
26909:
26910: --
26911: -- Upgrade strategy
26971: ') = 'ROUND'
26972: THEN
26973:
26974: --
26975: XLA_AE_LINES_PKG.SetNewLine;
26976:
26977: p_balance_type_code := l_balance_type_code;
26978: -- set the flag so later we will know whether the gain loss line needs to be created
26979:
26983:
26984: --
26985: -- bulk performance
26986: --
26987: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
26988: p_header_num => 0); -- 4262811
26989: --
26990: -- set accounting line options
26991: --
26988: p_header_num => 0); -- 4262811
26989: --
26990: -- set accounting line options
26991: --
26992: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
26993: p_natural_side_code => 'C'
26994: , p_gain_or_loss_flag => 'N'
26995: , p_gl_transfer_mode_code => 'S'
26996: , p_acct_entry_type_code => 'A'
27002: --
27003: --
27004: -- set accounting line type info
27005: --
27006: xla_ae_lines_pkg.SetAcctLineType
27007: (p_component_type => l_component_type
27008: ,p_event_type_code => l_event_type_code
27009: ,p_line_definition_owner_code => l_line_definition_owner_code
27010: ,p_line_definition_code => l_line_definition_code
27016: ,p_event_class_code => l_event_class_code);
27017: --
27018: -- set accounting class
27019: --
27020: xla_ae_lines_pkg.SetAcctClass(
27021: p_accounting_class_code => 'ROUNDING'
27022: , p_ae_header_id => l_ae_header_id
27023: );
27024:
27024:
27025: --
27026: -- set rounding class
27027: --
27028: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
27029: 'RECEIVABLE';
27030:
27031: --
27032: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
27028: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
27029: 'RECEIVABLE';
27030:
27031: --
27032: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
27033: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
27034: --
27035: -- bulk performance
27036: --
27029: 'RECEIVABLE';
27030:
27031: --
27032: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
27033: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
27034: --
27035: -- bulk performance
27036: --
27037: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
27033: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
27034: --
27035: -- bulk performance
27036: --
27037: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
27038:
27039: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
27040: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
27041:
27035: -- bulk performance
27036: --
27037: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
27038:
27039: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
27040: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
27041:
27042: -- 4955764
27043: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27039: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
27040: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
27041:
27042: -- 4955764
27043: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27044: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
27045:
27046: -- 4458381 Public Sector Enh
27047:
27075: l_rec_acct_attrs.array_char_value(11) := p_source_39;
27076: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
27077: l_rec_acct_attrs.array_num_value(12) := p_source_86;
27078:
27079: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
27080: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
27081:
27082: ---------------------------------------------------------------------------------------------------------------
27083: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27076: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
27077: l_rec_acct_attrs.array_num_value(12) := p_source_86;
27078:
27079: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
27080: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
27081:
27082: ---------------------------------------------------------------------------------------------------------------
27083: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27084: ---------------------------------------------------------------------------------------------------------------
27079: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
27080: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
27081:
27082: ---------------------------------------------------------------------------------------------------------------
27083: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27084: ---------------------------------------------------------------------------------------------------------------
27085: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27086:
27087: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27081:
27082: ---------------------------------------------------------------------------------------------------------------
27083: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27084: ---------------------------------------------------------------------------------------------------------------
27085: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27086:
27087: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27088: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27089:
27083: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27084: ---------------------------------------------------------------------------------------------------------------
27085: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27086:
27087: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27088: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27089:
27090: IF xla_accounting_cache_pkg.GetValueChar
27091: (p_source_code => 'LEDGER_CATEGORY_CODE'
27084: ---------------------------------------------------------------------------------------------------------------
27085: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27086:
27087: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27088: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27089:
27090: IF xla_accounting_cache_pkg.GetValueChar
27091: (p_source_code => 'LEDGER_CATEGORY_CODE'
27092: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
27095: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
27096: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
27097: )
27098: THEN
27099: xla_ae_lines_pkg.BflowUpgEntry
27100: (p_business_method_code => l_bflow_method_code
27101: ,p_business_class_code => l_bflow_class_code
27102: ,p_balance_type => l_balance_type_code);
27103: ELSE
27135: , x_value_type_code => l_adr_value_type_code
27136: , p_side => 'NA'
27137: );
27138:
27139: xla_ae_lines_pkg.set_ccid(
27140: p_code_combination_id => l_ccid
27141: , p_value_type_code => l_adr_value_type_code
27142: , p_transaction_coa_id => l_adr_transaction_coa_id
27143: , p_accounting_coa_id => l_adr_accounting_coa_id
27171: xla_accounting_err_pkg.build_message
27172: (p_appli_s_name => 'XLA'
27173: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
27174: ,p_token_1 => 'LINE_NUMBER'
27175: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
27176: ,p_token_2 => 'LINE_TYPE_NAME'
27177: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
27178: l_component_type
27179: ,l_component_code
27207: --
27208: --
27209: ------------------------------------------------------------------------------------------------
27210: -- 4219869 Business Flow
27211: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
27212: -- Prior Entry. Currently, the following code is always generated.
27213: ------------------------------------------------------------------------------------------------
27214: XLA_AE_LINES_PKG.ValidateCurrentLine;
27215:
27210: -- 4219869 Business Flow
27211: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
27212: -- Prior Entry. Currently, the following code is always generated.
27213: ------------------------------------------------------------------------------------------------
27214: XLA_AE_LINES_PKG.ValidateCurrentLine;
27215:
27216: ------------------------------------------------------------------------------------
27217: -- 4219869 Business Flow
27218: -- Populated credit and debit amounts -- Need to generate this within IF
27216: ------------------------------------------------------------------------------------
27217: -- 4219869 Business Flow
27218: -- Populated credit and debit amounts -- Need to generate this within IF
27219: ------------------------------------------------------------------------------------
27220: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27221:
27222: ----------------------------------------------------------------------------------
27223: -- 4219869 Business Flow
27224: -- Update journal entry status -- Need to generate this within IF
27248: -- To allow MPA report to determine if it should generate report process
27249: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
27250: ------------------------------------------------------------------------------------------
27251:
27252: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
27253: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
27254: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
27255: -- call ADRs
27256: -- Bug 4922099
27249: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
27250: ------------------------------------------------------------------------------------------
27251:
27252: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
27253: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
27254: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
27255: -- call ADRs
27256: -- Bug 4922099
27257: --
27273: , x_value_type_code => l_adr_value_type_code
27274: , p_side => 'NA'
27275: );
27276:
27277: xla_ae_lines_pkg.set_ccid(
27278: p_code_combination_id => l_ccid
27279: , p_value_type_code => l_adr_value_type_code
27280: , p_transaction_coa_id => l_adr_transaction_coa_id
27281: , p_accounting_coa_id => l_adr_accounting_coa_id
27296:
27297: --
27298: -- Update the line information that should be overwritten
27299: --
27300: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27301: p_header_num => 1);
27302: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27303:
27304: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27298: -- Update the line information that should be overwritten
27299: --
27300: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27301: p_header_num => 1);
27302: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27303:
27304: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27305:
27306: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27300: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27301: p_header_num => 1);
27302: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27303:
27304: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27305:
27306: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27307: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
27308: END IF;
27303:
27304: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27305:
27306: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27307: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
27308: END IF;
27309:
27310: --
27311: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
27310: --
27311: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
27312: --
27313: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
27314: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
27315: ELSE
27316: ---------------------------------------------------------------------------------------------------
27317: -- 4262811a Switch Sign
27318: ---------------------------------------------------------------------------------------------------
27315: ELSE
27316: ---------------------------------------------------------------------------------------------------
27317: -- 4262811a Switch Sign
27318: ---------------------------------------------------------------------------------------------------
27319: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27320: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27321: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27322: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27323: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27316: ---------------------------------------------------------------------------------------------------
27317: -- 4262811a Switch Sign
27318: ---------------------------------------------------------------------------------------------------
27319: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27320: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27321: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27322: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27323: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27324: -- 5132302
27317: -- 4262811a Switch Sign
27318: ---------------------------------------------------------------------------------------------------
27319: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27320: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27321: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27322: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27323: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27324: -- 5132302
27325: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27318: ---------------------------------------------------------------------------------------------------
27319: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27320: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27321: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27322: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27323: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27324: -- 5132302
27325: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27326: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27319: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27320: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27321: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27322: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27323: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27324: -- 5132302
27325: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27326: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27327:
27321: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27322: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27323: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27324: -- 5132302
27325: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27326: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27327:
27328: END IF;
27329:
27322: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27323: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27324: -- 5132302
27325: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27326: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27327:
27328: END IF;
27329:
27330: -- 4955764
27327:
27328: END IF;
27329:
27330: -- 4955764
27331: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27332: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27333:
27334:
27335: XLA_AE_LINES_PKG.ValidateCurrentLine;
27331: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27332: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27333:
27334:
27335: XLA_AE_LINES_PKG.ValidateCurrentLine;
27336: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27337:
27338: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
27339: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
27332: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27333:
27334:
27335: XLA_AE_LINES_PKG.ValidateCurrentLine;
27336: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27337:
27338: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
27339: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
27340: ,p_balance_type_code => l_balance_type_code);
27473: --
27474: -- bulk performance
27475: --
27476: l_balance_type_code VARCHAR2(1);
27477: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
27478: l_log_module VARCHAR2(240);
27479:
27480: --
27481: -- Upgrade strategy
27541: ') = 'TAX'
27542: THEN
27543:
27544: --
27545: XLA_AE_LINES_PKG.SetNewLine;
27546:
27547: p_balance_type_code := l_balance_type_code;
27548: -- set the flag so later we will know whether the gain loss line needs to be created
27549:
27553:
27554: --
27555: -- bulk performance
27556: --
27557: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
27558: p_header_num => 0); -- 4262811
27559: --
27560: -- set accounting line options
27561: --
27558: p_header_num => 0); -- 4262811
27559: --
27560: -- set accounting line options
27561: --
27562: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
27563: p_natural_side_code => 'C'
27564: , p_gain_or_loss_flag => 'N'
27565: , p_gl_transfer_mode_code => 'S'
27566: , p_acct_entry_type_code => 'A'
27572: --
27573: --
27574: -- set accounting line type info
27575: --
27576: xla_ae_lines_pkg.SetAcctLineType
27577: (p_component_type => l_component_type
27578: ,p_event_type_code => l_event_type_code
27579: ,p_line_definition_owner_code => l_line_definition_owner_code
27580: ,p_line_definition_code => l_line_definition_code
27586: ,p_event_class_code => l_event_class_code);
27587: --
27588: -- set accounting class
27589: --
27590: xla_ae_lines_pkg.SetAcctClass(
27591: p_accounting_class_code => 'TAX'
27592: , p_ae_header_id => l_ae_header_id
27593: );
27594:
27594:
27595: --
27596: -- set rounding class
27597: --
27598: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
27599: 'RECEIVABLE';
27600:
27601: --
27602: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
27598: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
27599: 'RECEIVABLE';
27600:
27601: --
27602: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
27603: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
27604: --
27605: -- bulk performance
27606: --
27599: 'RECEIVABLE';
27600:
27601: --
27602: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
27603: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
27604: --
27605: -- bulk performance
27606: --
27607: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
27603: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
27604: --
27605: -- bulk performance
27606: --
27607: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
27608:
27609: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
27610: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
27611:
27605: -- bulk performance
27606: --
27607: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
27608:
27609: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
27610: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
27611:
27612: -- 4955764
27613: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27609: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
27610: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
27611:
27612: -- 4955764
27613: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27614: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
27615:
27616: -- 4458381 Public Sector Enh
27617:
27645: l_rec_acct_attrs.array_char_value(11) := p_source_39;
27646: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
27647: l_rec_acct_attrs.array_num_value(12) := p_source_86;
27648:
27649: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
27650: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
27651:
27652: ---------------------------------------------------------------------------------------------------------------
27653: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27646: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
27647: l_rec_acct_attrs.array_num_value(12) := p_source_86;
27648:
27649: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
27650: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
27651:
27652: ---------------------------------------------------------------------------------------------------------------
27653: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27654: ---------------------------------------------------------------------------------------------------------------
27649: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
27650: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
27651:
27652: ---------------------------------------------------------------------------------------------------------------
27653: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27654: ---------------------------------------------------------------------------------------------------------------
27655: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27656:
27657: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27651:
27652: ---------------------------------------------------------------------------------------------------------------
27653: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27654: ---------------------------------------------------------------------------------------------------------------
27655: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27656:
27657: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27658: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27659:
27653: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27654: ---------------------------------------------------------------------------------------------------------------
27655: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27656:
27657: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27658: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27659:
27660: IF xla_accounting_cache_pkg.GetValueChar
27661: (p_source_code => 'LEDGER_CATEGORY_CODE'
27654: ---------------------------------------------------------------------------------------------------------------
27655: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27656:
27657: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27658: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27659:
27660: IF xla_accounting_cache_pkg.GetValueChar
27661: (p_source_code => 'LEDGER_CATEGORY_CODE'
27662: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
27665: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
27666: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
27667: )
27668: THEN
27669: xla_ae_lines_pkg.BflowUpgEntry
27670: (p_business_method_code => l_bflow_method_code
27671: ,p_business_class_code => l_bflow_class_code
27672: ,p_balance_type => l_balance_type_code);
27673: ELSE
27705: , x_value_type_code => l_adr_value_type_code
27706: , p_side => 'NA'
27707: );
27708:
27709: xla_ae_lines_pkg.set_ccid(
27710: p_code_combination_id => l_ccid
27711: , p_value_type_code => l_adr_value_type_code
27712: , p_transaction_coa_id => l_adr_transaction_coa_id
27713: , p_accounting_coa_id => l_adr_accounting_coa_id
27741: xla_accounting_err_pkg.build_message
27742: (p_appli_s_name => 'XLA'
27743: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
27744: ,p_token_1 => 'LINE_NUMBER'
27745: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
27746: ,p_token_2 => 'LINE_TYPE_NAME'
27747: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
27748: l_component_type
27749: ,l_component_code
27777: --
27778: --
27779: ------------------------------------------------------------------------------------------------
27780: -- 4219869 Business Flow
27781: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
27782: -- Prior Entry. Currently, the following code is always generated.
27783: ------------------------------------------------------------------------------------------------
27784: XLA_AE_LINES_PKG.ValidateCurrentLine;
27785:
27780: -- 4219869 Business Flow
27781: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
27782: -- Prior Entry. Currently, the following code is always generated.
27783: ------------------------------------------------------------------------------------------------
27784: XLA_AE_LINES_PKG.ValidateCurrentLine;
27785:
27786: ------------------------------------------------------------------------------------
27787: -- 4219869 Business Flow
27788: -- Populated credit and debit amounts -- Need to generate this within IF
27786: ------------------------------------------------------------------------------------
27787: -- 4219869 Business Flow
27788: -- Populated credit and debit amounts -- Need to generate this within IF
27789: ------------------------------------------------------------------------------------
27790: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27791:
27792: ----------------------------------------------------------------------------------
27793: -- 4219869 Business Flow
27794: -- Update journal entry status -- Need to generate this within IF
27818: -- To allow MPA report to determine if it should generate report process
27819: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
27820: ------------------------------------------------------------------------------------------
27821:
27822: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
27823: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
27824: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
27825: -- call ADRs
27826: -- Bug 4922099
27819: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
27820: ------------------------------------------------------------------------------------------
27821:
27822: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
27823: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
27824: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
27825: -- call ADRs
27826: -- Bug 4922099
27827: --
27843: , x_value_type_code => l_adr_value_type_code
27844: , p_side => 'NA'
27845: );
27846:
27847: xla_ae_lines_pkg.set_ccid(
27848: p_code_combination_id => l_ccid
27849: , p_value_type_code => l_adr_value_type_code
27850: , p_transaction_coa_id => l_adr_transaction_coa_id
27851: , p_accounting_coa_id => l_adr_accounting_coa_id
27866:
27867: --
27868: -- Update the line information that should be overwritten
27869: --
27870: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27871: p_header_num => 1);
27872: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27873:
27874: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27868: -- Update the line information that should be overwritten
27869: --
27870: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27871: p_header_num => 1);
27872: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27873:
27874: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27875:
27876: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27870: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27871: p_header_num => 1);
27872: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27873:
27874: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27875:
27876: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27877: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
27878: END IF;
27873:
27874: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27875:
27876: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27877: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
27878: END IF;
27879:
27880: --
27881: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
27880: --
27881: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
27882: --
27883: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
27884: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
27885: ELSE
27886: ---------------------------------------------------------------------------------------------------
27887: -- 4262811a Switch Sign
27888: ---------------------------------------------------------------------------------------------------
27885: ELSE
27886: ---------------------------------------------------------------------------------------------------
27887: -- 4262811a Switch Sign
27888: ---------------------------------------------------------------------------------------------------
27889: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27891: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27886: ---------------------------------------------------------------------------------------------------
27887: -- 4262811a Switch Sign
27888: ---------------------------------------------------------------------------------------------------
27889: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27891: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27894: -- 5132302
27887: -- 4262811a Switch Sign
27888: ---------------------------------------------------------------------------------------------------
27889: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27891: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27894: -- 5132302
27895: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27888: ---------------------------------------------------------------------------------------------------
27889: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27891: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27894: -- 5132302
27895: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27896: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27889: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27891: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27894: -- 5132302
27895: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27896: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27897:
27891: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27894: -- 5132302
27895: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27896: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27897:
27898: END IF;
27899:
27892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27894: -- 5132302
27895: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27896: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27897:
27898: END IF;
27899:
27900: -- 4955764
27897:
27898: END IF;
27899:
27900: -- 4955764
27901: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27902: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27903:
27904:
27905: XLA_AE_LINES_PKG.ValidateCurrentLine;
27901: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27902: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27903:
27904:
27905: XLA_AE_LINES_PKG.ValidateCurrentLine;
27906: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27907:
27908: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
27909: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
27902: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27903:
27904:
27905: XLA_AE_LINES_PKG.ValidateCurrentLine;
27906: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27907:
27908: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
27909: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
27910: ,p_balance_type_code => l_balance_type_code);
28043: --
28044: -- bulk performance
28045: --
28046: l_balance_type_code VARCHAR2(1);
28047: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
28048: l_log_module VARCHAR2(240);
28049:
28050: --
28051: -- Upgrade strategy
28111: ') = 'UNBILL'
28112: THEN
28113:
28114: --
28115: XLA_AE_LINES_PKG.SetNewLine;
28116:
28117: p_balance_type_code := l_balance_type_code;
28118: -- set the flag so later we will know whether the gain loss line needs to be created
28119:
28123:
28124: --
28125: -- bulk performance
28126: --
28127: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
28128: p_header_num => 0); -- 4262811
28129: --
28130: -- set accounting line options
28131: --
28128: p_header_num => 0); -- 4262811
28129: --
28130: -- set accounting line options
28131: --
28132: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
28133: p_natural_side_code => 'D'
28134: , p_gain_or_loss_flag => 'N'
28135: , p_gl_transfer_mode_code => 'S'
28136: , p_acct_entry_type_code => 'A'
28142: --
28143: --
28144: -- set accounting line type info
28145: --
28146: xla_ae_lines_pkg.SetAcctLineType
28147: (p_component_type => l_component_type
28148: ,p_event_type_code => l_event_type_code
28149: ,p_line_definition_owner_code => l_line_definition_owner_code
28150: ,p_line_definition_code => l_line_definition_code
28156: ,p_event_class_code => l_event_class_code);
28157: --
28158: -- set accounting class
28159: --
28160: xla_ae_lines_pkg.SetAcctClass(
28161: p_accounting_class_code => 'UNBILL'
28162: , p_ae_header_id => l_ae_header_id
28163: );
28164:
28164:
28165: --
28166: -- set rounding class
28167: --
28168: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
28169: 'RECEIVABLE';
28170:
28171: --
28172: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28168: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
28169: 'RECEIVABLE';
28170:
28171: --
28172: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28173: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28174: --
28175: -- bulk performance
28176: --
28169: 'RECEIVABLE';
28170:
28171: --
28172: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28173: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28174: --
28175: -- bulk performance
28176: --
28177: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28173: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28174: --
28175: -- bulk performance
28176: --
28177: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28178:
28179: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28180: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28181:
28175: -- bulk performance
28176: --
28177: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28178:
28179: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28180: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28181:
28182: -- 4955764
28183: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28179: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28180: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28181:
28182: -- 4955764
28183: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28184: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
28185:
28186: -- 4458381 Public Sector Enh
28187:
28215: l_rec_acct_attrs.array_char_value(11) := p_source_39;
28216: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
28217: l_rec_acct_attrs.array_num_value(12) := p_source_86;
28218:
28219: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28220: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28221:
28222: ---------------------------------------------------------------------------------------------------------------
28223: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28216: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
28217: l_rec_acct_attrs.array_num_value(12) := p_source_86;
28218:
28219: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28220: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28221:
28222: ---------------------------------------------------------------------------------------------------------------
28223: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28224: ---------------------------------------------------------------------------------------------------------------
28219: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28220: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28221:
28222: ---------------------------------------------------------------------------------------------------------------
28223: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28224: ---------------------------------------------------------------------------------------------------------------
28225: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28226:
28227: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28221:
28222: ---------------------------------------------------------------------------------------------------------------
28223: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28224: ---------------------------------------------------------------------------------------------------------------
28225: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28226:
28227: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28228: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28229:
28223: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28224: ---------------------------------------------------------------------------------------------------------------
28225: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28226:
28227: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28228: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28229:
28230: IF xla_accounting_cache_pkg.GetValueChar
28231: (p_source_code => 'LEDGER_CATEGORY_CODE'
28224: ---------------------------------------------------------------------------------------------------------------
28225: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28226:
28227: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28228: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28229:
28230: IF xla_accounting_cache_pkg.GetValueChar
28231: (p_source_code => 'LEDGER_CATEGORY_CODE'
28232: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
28235: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
28236: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
28237: )
28238: THEN
28239: xla_ae_lines_pkg.BflowUpgEntry
28240: (p_business_method_code => l_bflow_method_code
28241: ,p_business_class_code => l_bflow_class_code
28242: ,p_balance_type => l_balance_type_code);
28243: ELSE
28275: , x_value_type_code => l_adr_value_type_code
28276: , p_side => 'NA'
28277: );
28278:
28279: xla_ae_lines_pkg.set_ccid(
28280: p_code_combination_id => l_ccid
28281: , p_value_type_code => l_adr_value_type_code
28282: , p_transaction_coa_id => l_adr_transaction_coa_id
28283: , p_accounting_coa_id => l_adr_accounting_coa_id
28311: xla_accounting_err_pkg.build_message
28312: (p_appli_s_name => 'XLA'
28313: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
28314: ,p_token_1 => 'LINE_NUMBER'
28315: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
28316: ,p_token_2 => 'LINE_TYPE_NAME'
28317: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
28318: l_component_type
28319: ,l_component_code
28347: --
28348: --
28349: ------------------------------------------------------------------------------------------------
28350: -- 4219869 Business Flow
28351: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
28352: -- Prior Entry. Currently, the following code is always generated.
28353: ------------------------------------------------------------------------------------------------
28354: XLA_AE_LINES_PKG.ValidateCurrentLine;
28355:
28350: -- 4219869 Business Flow
28351: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
28352: -- Prior Entry. Currently, the following code is always generated.
28353: ------------------------------------------------------------------------------------------------
28354: XLA_AE_LINES_PKG.ValidateCurrentLine;
28355:
28356: ------------------------------------------------------------------------------------
28357: -- 4219869 Business Flow
28358: -- Populated credit and debit amounts -- Need to generate this within IF
28356: ------------------------------------------------------------------------------------
28357: -- 4219869 Business Flow
28358: -- Populated credit and debit amounts -- Need to generate this within IF
28359: ------------------------------------------------------------------------------------
28360: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
28361:
28362: ----------------------------------------------------------------------------------
28363: -- 4219869 Business Flow
28364: -- Update journal entry status -- Need to generate this within IF
28388: -- To allow MPA report to determine if it should generate report process
28389: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
28390: ------------------------------------------------------------------------------------------
28391:
28392: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
28393: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
28394: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
28395: -- call ADRs
28396: -- Bug 4922099
28389: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
28390: ------------------------------------------------------------------------------------------
28391:
28392: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
28393: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
28394: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
28395: -- call ADRs
28396: -- Bug 4922099
28397: --
28413: , x_value_type_code => l_adr_value_type_code
28414: , p_side => 'NA'
28415: );
28416:
28417: xla_ae_lines_pkg.set_ccid(
28418: p_code_combination_id => l_ccid
28419: , p_value_type_code => l_adr_value_type_code
28420: , p_transaction_coa_id => l_adr_transaction_coa_id
28421: , p_accounting_coa_id => l_adr_accounting_coa_id
28436:
28437: --
28438: -- Update the line information that should be overwritten
28439: --
28440: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
28441: p_header_num => 1);
28442: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
28443:
28444: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
28438: -- Update the line information that should be overwritten
28439: --
28440: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
28441: p_header_num => 1);
28442: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
28443:
28444: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
28445:
28446: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
28440: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
28441: p_header_num => 1);
28442: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
28443:
28444: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
28445:
28446: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
28447: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
28448: END IF;
28443:
28444: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
28445:
28446: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
28447: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
28448: END IF;
28449:
28450: --
28451: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
28450: --
28451: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
28452: --
28453: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
28454: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
28455: ELSE
28456: ---------------------------------------------------------------------------------------------------
28457: -- 4262811a Switch Sign
28458: ---------------------------------------------------------------------------------------------------
28455: ELSE
28456: ---------------------------------------------------------------------------------------------------
28457: -- 4262811a Switch Sign
28458: ---------------------------------------------------------------------------------------------------
28459: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28460: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28461: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28462: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28463: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28456: ---------------------------------------------------------------------------------------------------
28457: -- 4262811a Switch Sign
28458: ---------------------------------------------------------------------------------------------------
28459: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28460: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28461: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28462: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28463: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28464: -- 5132302
28457: -- 4262811a Switch Sign
28458: ---------------------------------------------------------------------------------------------------
28459: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28460: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28461: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28462: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28463: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28464: -- 5132302
28465: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28458: ---------------------------------------------------------------------------------------------------
28459: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28460: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28461: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28462: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28463: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28464: -- 5132302
28465: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28466: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28459: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28460: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28461: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28462: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28463: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28464: -- 5132302
28465: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28466: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28467:
28461: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28462: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28463: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28464: -- 5132302
28465: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28466: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28467:
28468: END IF;
28469:
28462: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28463: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28464: -- 5132302
28465: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28466: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28467:
28468: END IF;
28469:
28470: -- 4955764
28467:
28468: END IF;
28469:
28470: -- 4955764
28471: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28472: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
28473:
28474:
28475: XLA_AE_LINES_PKG.ValidateCurrentLine;
28471: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28472: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
28473:
28474:
28475: XLA_AE_LINES_PKG.ValidateCurrentLine;
28476: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
28477:
28478: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
28479: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
28472: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
28473:
28474:
28475: XLA_AE_LINES_PKG.ValidateCurrentLine;
28476: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
28477:
28478: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
28479: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
28480: ,p_balance_type_code => l_balance_type_code);
28615: --
28616: -- bulk performance
28617: --
28618: l_balance_type_code VARCHAR2(1);
28619: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
28620: l_log_module VARCHAR2(240);
28621:
28622: --
28623: -- Upgrade strategy
28683: ') = 'UNEARN'
28684: THEN
28685:
28686: --
28687: XLA_AE_LINES_PKG.SetNewLine;
28688:
28689: p_balance_type_code := l_balance_type_code;
28690: -- set the flag so later we will know whether the gain loss line needs to be created
28691:
28695:
28696: --
28697: -- bulk performance
28698: --
28699: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
28700: p_header_num => 0); -- 4262811
28701: --
28702: -- set accounting line options
28703: --
28700: p_header_num => 0); -- 4262811
28701: --
28702: -- set accounting line options
28703: --
28704: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
28705: p_natural_side_code => 'C'
28706: , p_gain_or_loss_flag => 'N'
28707: , p_gl_transfer_mode_code => 'S'
28708: , p_acct_entry_type_code => 'A'
28714: --
28715: --
28716: -- set accounting line type info
28717: --
28718: xla_ae_lines_pkg.SetAcctLineType
28719: (p_component_type => l_component_type
28720: ,p_event_type_code => l_event_type_code
28721: ,p_line_definition_owner_code => l_line_definition_owner_code
28722: ,p_line_definition_code => l_line_definition_code
28728: ,p_event_class_code => l_event_class_code);
28729: --
28730: -- set accounting class
28731: --
28732: xla_ae_lines_pkg.SetAcctClass(
28733: p_accounting_class_code => 'UNEARNED_REVENUE'
28734: , p_ae_header_id => l_ae_header_id
28735: );
28736:
28736:
28737: --
28738: -- set rounding class
28739: --
28740: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
28741: 'RECEIVABLE';
28742:
28743: --
28744: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28740: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
28741: 'RECEIVABLE';
28742:
28743: --
28744: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28745: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28746: --
28747: -- bulk performance
28748: --
28741: 'RECEIVABLE';
28742:
28743: --
28744: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28745: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28746: --
28747: -- bulk performance
28748: --
28749: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28745: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28746: --
28747: -- bulk performance
28748: --
28749: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28750:
28751: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28752: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28753:
28747: -- bulk performance
28748: --
28749: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28750:
28751: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28752: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28753:
28754: -- 4955764
28755: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28751: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28752: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28753:
28754: -- 4955764
28755: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28756: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
28757:
28758: -- 4458381 Public Sector Enh
28759:
28787: l_rec_acct_attrs.array_char_value(11) := p_source_39;
28788: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
28789: l_rec_acct_attrs.array_num_value(12) := p_source_86;
28790:
28791: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28792: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28793:
28794: ---------------------------------------------------------------------------------------------------------------
28795: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28788: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
28789: l_rec_acct_attrs.array_num_value(12) := p_source_86;
28790:
28791: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28792: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28793:
28794: ---------------------------------------------------------------------------------------------------------------
28795: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28796: ---------------------------------------------------------------------------------------------------------------
28791: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28792: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28793:
28794: ---------------------------------------------------------------------------------------------------------------
28795: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28796: ---------------------------------------------------------------------------------------------------------------
28797: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28798:
28799: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28793:
28794: ---------------------------------------------------------------------------------------------------------------
28795: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28796: ---------------------------------------------------------------------------------------------------------------
28797: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28798:
28799: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28800: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28801:
28795: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28796: ---------------------------------------------------------------------------------------------------------------
28797: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28798:
28799: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28800: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28801:
28802: IF xla_accounting_cache_pkg.GetValueChar
28803: (p_source_code => 'LEDGER_CATEGORY_CODE'
28796: ---------------------------------------------------------------------------------------------------------------
28797: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28798:
28799: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28800: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28801:
28802: IF xla_accounting_cache_pkg.GetValueChar
28803: (p_source_code => 'LEDGER_CATEGORY_CODE'
28804: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
28807: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
28808: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
28809: )
28810: THEN
28811: xla_ae_lines_pkg.BflowUpgEntry
28812: (p_business_method_code => l_bflow_method_code
28813: ,p_business_class_code => l_bflow_class_code
28814: ,p_balance_type => l_balance_type_code);
28815: ELSE
28821: -- call analytical criteria
28822: --
28823:
28824:
28825: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
28826: xla_ae_lines_pkg.SetAnalyticalCriteria(
28827: p_analytical_criterion_name => 'Project Number'
28828: , p_analytical_criterion_owner => 'S'
28829: , p_analytical_criterion_code => 'PROJECT_NUMBER'
28822: --
28823:
28824:
28825: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
28826: xla_ae_lines_pkg.SetAnalyticalCriteria(
28827: p_analytical_criterion_name => 'Project Number'
28828: , p_analytical_criterion_owner => 'S'
28829: , p_analytical_criterion_code => 'PROJECT_NUMBER'
28830: , p_amb_context_code => 'DEFAULT'
28865: , x_value_type_code => l_adr_value_type_code
28866: , p_side => 'NA'
28867: );
28868:
28869: xla_ae_lines_pkg.set_ccid(
28870: p_code_combination_id => l_ccid
28871: , p_value_type_code => l_adr_value_type_code
28872: , p_transaction_coa_id => l_adr_transaction_coa_id
28873: , p_accounting_coa_id => l_adr_accounting_coa_id
28901: xla_accounting_err_pkg.build_message
28902: (p_appli_s_name => 'XLA'
28903: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
28904: ,p_token_1 => 'LINE_NUMBER'
28905: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
28906: ,p_token_2 => 'LINE_TYPE_NAME'
28907: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
28908: l_component_type
28909: ,l_component_code
28937: --
28938: --
28939: ------------------------------------------------------------------------------------------------
28940: -- 4219869 Business Flow
28941: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
28942: -- Prior Entry. Currently, the following code is always generated.
28943: ------------------------------------------------------------------------------------------------
28944: XLA_AE_LINES_PKG.ValidateCurrentLine;
28945:
28940: -- 4219869 Business Flow
28941: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
28942: -- Prior Entry. Currently, the following code is always generated.
28943: ------------------------------------------------------------------------------------------------
28944: XLA_AE_LINES_PKG.ValidateCurrentLine;
28945:
28946: ------------------------------------------------------------------------------------
28947: -- 4219869 Business Flow
28948: -- Populated credit and debit amounts -- Need to generate this within IF
28946: ------------------------------------------------------------------------------------
28947: -- 4219869 Business Flow
28948: -- Populated credit and debit amounts -- Need to generate this within IF
28949: ------------------------------------------------------------------------------------
28950: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
28951:
28952: ----------------------------------------------------------------------------------
28953: -- 4219869 Business Flow
28954: -- Update journal entry status -- Need to generate this within IF
28978: -- To allow MPA report to determine if it should generate report process
28979: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
28980: ------------------------------------------------------------------------------------------
28981:
28982: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
28983: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
28984: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
28985: -- call ADRs
28986: -- Bug 4922099
28979: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
28980: ------------------------------------------------------------------------------------------
28981:
28982: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
28983: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
28984: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
28985: -- call ADRs
28986: -- Bug 4922099
28987: --
29003: , x_value_type_code => l_adr_value_type_code
29004: , p_side => 'NA'
29005: );
29006:
29007: xla_ae_lines_pkg.set_ccid(
29008: p_code_combination_id => l_ccid
29009: , p_value_type_code => l_adr_value_type_code
29010: , p_transaction_coa_id => l_adr_transaction_coa_id
29011: , p_accounting_coa_id => l_adr_accounting_coa_id
29026:
29027: --
29028: -- Update the line information that should be overwritten
29029: --
29030: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29031: p_header_num => 1);
29032: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29033:
29034: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29028: -- Update the line information that should be overwritten
29029: --
29030: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29031: p_header_num => 1);
29032: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29033:
29034: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29035:
29036: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29030: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29031: p_header_num => 1);
29032: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29033:
29034: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29035:
29036: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29037: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
29038: END IF;
29033:
29034: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29035:
29036: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29037: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
29038: END IF;
29039:
29040: --
29041: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
29040: --
29041: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
29042: --
29043: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
29044: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
29045: ELSE
29046: ---------------------------------------------------------------------------------------------------
29047: -- 4262811a Switch Sign
29048: ---------------------------------------------------------------------------------------------------
29045: ELSE
29046: ---------------------------------------------------------------------------------------------------
29047: -- 4262811a Switch Sign
29048: ---------------------------------------------------------------------------------------------------
29049: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29050: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29051: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29052: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29053: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29046: ---------------------------------------------------------------------------------------------------
29047: -- 4262811a Switch Sign
29048: ---------------------------------------------------------------------------------------------------
29049: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29050: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29051: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29052: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29053: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29054: -- 5132302
29047: -- 4262811a Switch Sign
29048: ---------------------------------------------------------------------------------------------------
29049: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29050: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29051: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29052: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29053: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29054: -- 5132302
29055: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29048: ---------------------------------------------------------------------------------------------------
29049: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29050: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29051: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29052: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29053: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29054: -- 5132302
29055: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29056: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29049: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29050: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29051: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29052: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29053: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29054: -- 5132302
29055: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29056: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29057:
29051: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29052: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29053: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29054: -- 5132302
29055: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29056: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29057:
29058: END IF;
29059:
29052: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29053: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29054: -- 5132302
29055: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29056: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29057:
29058: END IF;
29059:
29060: -- 4955764
29057:
29058: END IF;
29059:
29060: -- 4955764
29061: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29062: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29063:
29064:
29065: XLA_AE_LINES_PKG.ValidateCurrentLine;
29061: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29062: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29063:
29064:
29065: XLA_AE_LINES_PKG.ValidateCurrentLine;
29066: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29067:
29068: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
29069: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
29062: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29063:
29064:
29065: XLA_AE_LINES_PKG.ValidateCurrentLine;
29066: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29067:
29068: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
29069: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
29070: ,p_balance_type_code => l_balance_type_code);
29228: --
29229: -- bulk performance
29230: --
29231: l_balance_type_code VARCHAR2(1);
29232: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
29233: l_log_module VARCHAR2(240);
29234:
29235: --
29236: -- Upgrade strategy
29298: ') = 'FACTORING'
29299: THEN
29300:
29301: --
29302: XLA_AE_LINES_PKG.SetNewLine;
29303:
29304: p_balance_type_code := l_balance_type_code;
29305: -- set the flag so later we will know whether the gain loss line needs to be created
29306:
29310:
29311: --
29312: -- bulk performance
29313: --
29314: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
29315: p_header_num => 0); -- 4262811
29316: --
29317: -- set accounting line options
29318: --
29315: p_header_num => 0); -- 4262811
29316: --
29317: -- set accounting line options
29318: --
29319: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
29320: p_natural_side_code => 'D'
29321: , p_gain_or_loss_flag => 'N'
29322: , p_gl_transfer_mode_code => 'S'
29323: , p_acct_entry_type_code => 'A'
29329: --
29330: --
29331: -- set accounting line type info
29332: --
29333: xla_ae_lines_pkg.SetAcctLineType
29334: (p_component_type => l_component_type
29335: ,p_event_type_code => l_event_type_code
29336: ,p_line_definition_owner_code => l_line_definition_owner_code
29337: ,p_line_definition_code => l_line_definition_code
29343: ,p_event_class_code => l_event_class_code);
29344: --
29345: -- set accounting class
29346: --
29347: xla_ae_lines_pkg.SetAcctClass(
29348: p_accounting_class_code => 'BANK_CHG'
29349: , p_ae_header_id => l_ae_header_id
29350: );
29351:
29351:
29352: --
29353: -- set rounding class
29354: --
29355: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
29356: 'BANK_CHG';
29357:
29358: --
29359: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
29355: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
29356: 'BANK_CHG';
29357:
29358: --
29359: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
29360: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
29361: --
29362: -- bulk performance
29363: --
29356: 'BANK_CHG';
29357:
29358: --
29359: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
29360: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
29361: --
29362: -- bulk performance
29363: --
29364: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
29360: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
29361: --
29362: -- bulk performance
29363: --
29364: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
29365:
29366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
29367: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
29368:
29362: -- bulk performance
29363: --
29364: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
29365:
29366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
29367: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
29368:
29369: -- 4955764
29370: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
29367: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
29368:
29369: -- 4955764
29370: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29371: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
29372:
29373: -- 4458381 Public Sector Enh
29374:
29432: l_rec_acct_attrs.array_char_value(21) := p_source_84;
29433: l_rec_acct_attrs.array_acct_attr_code(22) := 'TRX_ROUNDING_REF';
29434: l_rec_acct_attrs.array_num_value(22) := to_char(p_source_82);
29435:
29436: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
29437: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
29438:
29439: ---------------------------------------------------------------------------------------------------------------
29440: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29433: l_rec_acct_attrs.array_acct_attr_code(22) := 'TRX_ROUNDING_REF';
29434: l_rec_acct_attrs.array_num_value(22) := to_char(p_source_82);
29435:
29436: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
29437: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
29438:
29439: ---------------------------------------------------------------------------------------------------------------
29440: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29441: ---------------------------------------------------------------------------------------------------------------
29436: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
29437: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
29438:
29439: ---------------------------------------------------------------------------------------------------------------
29440: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29441: ---------------------------------------------------------------------------------------------------------------
29442: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
29443:
29444: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29438:
29439: ---------------------------------------------------------------------------------------------------------------
29440: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29441: ---------------------------------------------------------------------------------------------------------------
29442: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
29443:
29444: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29445: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29446:
29440: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29441: ---------------------------------------------------------------------------------------------------------------
29442: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
29443:
29444: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29445: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29446:
29447: IF xla_accounting_cache_pkg.GetValueChar
29448: (p_source_code => 'LEDGER_CATEGORY_CODE'
29441: ---------------------------------------------------------------------------------------------------------------
29442: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
29443:
29444: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29445: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29446:
29447: IF xla_accounting_cache_pkg.GetValueChar
29448: (p_source_code => 'LEDGER_CATEGORY_CODE'
29449: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
29452: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
29453: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
29454: )
29455: THEN
29456: xla_ae_lines_pkg.BflowUpgEntry
29457: (p_business_method_code => l_bflow_method_code
29458: ,p_business_class_code => l_bflow_class_code
29459: ,p_balance_type => l_balance_type_code);
29460: ELSE
29469: --
29470: -- call description
29471: --
29472:
29473: xla_ae_lines_pkg.SetLineDescription(
29474: p_ae_header_id => l_ae_header_id
29475: ,p_description => Description_2 (
29476: p_application_id => p_application_id
29477: , p_ae_header_id => l_ae_header_id
29506: , x_value_type_code => l_adr_value_type_code
29507: , p_side => 'NA'
29508: );
29509:
29510: xla_ae_lines_pkg.set_ccid(
29511: p_code_combination_id => l_ccid
29512: , p_value_type_code => l_adr_value_type_code
29513: , p_transaction_coa_id => l_adr_transaction_coa_id
29514: , p_accounting_coa_id => l_adr_accounting_coa_id
29542: xla_accounting_err_pkg.build_message
29543: (p_appli_s_name => 'XLA'
29544: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
29545: ,p_token_1 => 'LINE_NUMBER'
29546: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
29547: ,p_token_2 => 'LINE_TYPE_NAME'
29548: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
29549: l_component_type
29550: ,l_component_code
29578: --
29579: --
29580: ------------------------------------------------------------------------------------------------
29581: -- 4219869 Business Flow
29582: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
29583: -- Prior Entry. Currently, the following code is always generated.
29584: ------------------------------------------------------------------------------------------------
29585: XLA_AE_LINES_PKG.ValidateCurrentLine;
29586:
29581: -- 4219869 Business Flow
29582: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
29583: -- Prior Entry. Currently, the following code is always generated.
29584: ------------------------------------------------------------------------------------------------
29585: XLA_AE_LINES_PKG.ValidateCurrentLine;
29586:
29587: ------------------------------------------------------------------------------------
29588: -- 4219869 Business Flow
29589: -- Populated credit and debit amounts -- Need to generate this within IF
29587: ------------------------------------------------------------------------------------
29588: -- 4219869 Business Flow
29589: -- Populated credit and debit amounts -- Need to generate this within IF
29590: ------------------------------------------------------------------------------------
29591: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29592:
29593: ----------------------------------------------------------------------------------
29594: -- 4219869 Business Flow
29595: -- Update journal entry status -- Need to generate this within IF
29619: -- To allow MPA report to determine if it should generate report process
29620: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
29621: ------------------------------------------------------------------------------------------
29622:
29623: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
29624: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
29625: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
29626: -- call ADRs
29627: -- Bug 4922099
29620: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
29621: ------------------------------------------------------------------------------------------
29622:
29623: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
29624: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
29625: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
29626: -- call ADRs
29627: -- Bug 4922099
29628: --
29644: , x_value_type_code => l_adr_value_type_code
29645: , p_side => 'NA'
29646: );
29647:
29648: xla_ae_lines_pkg.set_ccid(
29649: p_code_combination_id => l_ccid
29650: , p_value_type_code => l_adr_value_type_code
29651: , p_transaction_coa_id => l_adr_transaction_coa_id
29652: , p_accounting_coa_id => l_adr_accounting_coa_id
29667:
29668: --
29669: -- Update the line information that should be overwritten
29670: --
29671: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29672: p_header_num => 1);
29673: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29674:
29675: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29669: -- Update the line information that should be overwritten
29670: --
29671: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29672: p_header_num => 1);
29673: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29674:
29675: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29676:
29677: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29671: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29672: p_header_num => 1);
29673: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29674:
29675: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29676:
29677: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29678: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
29679: END IF;
29674:
29675: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29676:
29677: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29678: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
29679: END IF;
29680:
29681: --
29682: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
29681: --
29682: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
29683: --
29684: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
29685: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
29686: ELSE
29687: ---------------------------------------------------------------------------------------------------
29688: -- 4262811a Switch Sign
29689: ---------------------------------------------------------------------------------------------------
29686: ELSE
29687: ---------------------------------------------------------------------------------------------------
29688: -- 4262811a Switch Sign
29689: ---------------------------------------------------------------------------------------------------
29690: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29691: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29692: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29693: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29694: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29687: ---------------------------------------------------------------------------------------------------
29688: -- 4262811a Switch Sign
29689: ---------------------------------------------------------------------------------------------------
29690: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29691: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29692: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29693: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29694: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29695: -- 5132302
29688: -- 4262811a Switch Sign
29689: ---------------------------------------------------------------------------------------------------
29690: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29691: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29692: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29693: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29694: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29695: -- 5132302
29696: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29689: ---------------------------------------------------------------------------------------------------
29690: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29691: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29692: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29693: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29694: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29695: -- 5132302
29696: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29697: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29690: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29691: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29692: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29693: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29694: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29695: -- 5132302
29696: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29697: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29698:
29692: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29693: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29694: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29695: -- 5132302
29696: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29697: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29698:
29699: END IF;
29700:
29693: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29694: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29695: -- 5132302
29696: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29697: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29698:
29699: END IF;
29700:
29701: -- 4955764
29698:
29699: END IF;
29700:
29701: -- 4955764
29702: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29703: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29704:
29705:
29706: XLA_AE_LINES_PKG.ValidateCurrentLine;
29702: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29703: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29704:
29705:
29706: XLA_AE_LINES_PKG.ValidateCurrentLine;
29707: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29708:
29709: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
29710: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
29703: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29704:
29705:
29706: XLA_AE_LINES_PKG.ValidateCurrentLine;
29707: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29708:
29709: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
29710: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
29711: ,p_balance_type_code => l_balance_type_code);
29854: --
29855: -- bulk performance
29856: --
29857: l_balance_type_code VARCHAR2(1);
29858: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
29859: l_log_module VARCHAR2(240);
29860:
29861: --
29862: -- Upgrade strategy
29926: ') = 'RETURN_OCCURRENCE'
29927: THEN
29928:
29929: --
29930: XLA_AE_LINES_PKG.SetNewLine;
29931:
29932: p_balance_type_code := l_balance_type_code;
29933: -- set the flag so later we will know whether the gain loss line needs to be created
29934:
29938:
29939: --
29940: -- bulk performance
29941: --
29942: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
29943: p_header_num => 0); -- 4262811
29944: --
29945: -- set accounting line options
29946: --
29943: p_header_num => 0); -- 4262811
29944: --
29945: -- set accounting line options
29946: --
29947: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
29948: p_natural_side_code => 'C'
29949: , p_gain_or_loss_flag => 'N'
29950: , p_gl_transfer_mode_code => 'S'
29951: , p_acct_entry_type_code => 'A'
29957: --
29958: --
29959: -- set accounting line type info
29960: --
29961: xla_ae_lines_pkg.SetAcctLineType
29962: (p_component_type => l_component_type
29963: ,p_event_type_code => l_event_type_code
29964: ,p_line_definition_owner_code => l_line_definition_owner_code
29965: ,p_line_definition_code => l_line_definition_code
29971: ,p_event_class_code => l_event_class_code);
29972: --
29973: -- set accounting class
29974: --
29975: xla_ae_lines_pkg.SetAcctClass(
29976: p_accounting_class_code => 'FACTOR'
29977: , p_ae_header_id => l_ae_header_id
29978: );
29979:
29979:
29980: --
29981: -- set rounding class
29982: --
29983: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
29984: 'FACTOR';
29985:
29986: --
29987: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
29983: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
29984: 'FACTOR';
29985:
29986: --
29987: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
29988: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
29989: --
29990: -- bulk performance
29991: --
29984: 'FACTOR';
29985:
29986: --
29987: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
29988: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
29989: --
29990: -- bulk performance
29991: --
29992: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
29988: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
29989: --
29990: -- bulk performance
29991: --
29992: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
29993:
29994: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
29995: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
29996:
29990: -- bulk performance
29991: --
29992: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
29993:
29994: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
29995: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
29996:
29997: -- 4955764
29998: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29994: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
29995: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
29996:
29997: -- 4955764
29998: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29999: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
30000:
30001: -- 4458381 Public Sector Enh
30002:
30050: l_rec_acct_attrs.array_char_value(16) := p_source_84;
30051: l_rec_acct_attrs.array_acct_attr_code(17) := 'TRX_ROUNDING_REF';
30052: l_rec_acct_attrs.array_num_value(17) := to_char(p_source_82);
30053:
30054: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30055: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30056:
30057: ---------------------------------------------------------------------------------------------------------------
30058: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30051: l_rec_acct_attrs.array_acct_attr_code(17) := 'TRX_ROUNDING_REF';
30052: l_rec_acct_attrs.array_num_value(17) := to_char(p_source_82);
30053:
30054: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30055: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30056:
30057: ---------------------------------------------------------------------------------------------------------------
30058: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30059: ---------------------------------------------------------------------------------------------------------------
30054: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30055: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30056:
30057: ---------------------------------------------------------------------------------------------------------------
30058: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30059: ---------------------------------------------------------------------------------------------------------------
30060: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30061:
30062: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30056:
30057: ---------------------------------------------------------------------------------------------------------------
30058: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30059: ---------------------------------------------------------------------------------------------------------------
30060: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30061:
30062: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30063: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30064:
30058: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30059: ---------------------------------------------------------------------------------------------------------------
30060: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30061:
30062: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30063: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30064:
30065: IF xla_accounting_cache_pkg.GetValueChar
30066: (p_source_code => 'LEDGER_CATEGORY_CODE'
30059: ---------------------------------------------------------------------------------------------------------------
30060: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30061:
30062: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30063: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30064:
30065: IF xla_accounting_cache_pkg.GetValueChar
30066: (p_source_code => 'LEDGER_CATEGORY_CODE'
30067: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
30070: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
30071: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
30072: )
30073: THEN
30074: xla_ae_lines_pkg.BflowUpgEntry
30075: (p_business_method_code => l_bflow_method_code
30076: ,p_business_class_code => l_bflow_class_code
30077: ,p_balance_type => l_balance_type_code);
30078: ELSE
30076: ,p_business_class_code => l_bflow_class_code
30077: ,p_balance_type => l_balance_type_code);
30078: ELSE
30079: NULL;
30080: XLA_AE_LINES_PKG.business_flow_validation(
30081: p_business_method_code => l_bflow_method_code
30082: ,p_business_class_code => l_bflow_class_code
30083: ,p_inherit_description_flag => l_inherit_desc_flag);
30084: END IF;
30123: xla_accounting_err_pkg.build_message
30124: (p_appli_s_name => 'XLA'
30125: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
30126: ,p_token_1 => 'LINE_NUMBER'
30127: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
30128: ,p_token_2 => 'LINE_TYPE_NAME'
30129: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
30130: l_component_type
30131: ,l_component_code
30159: --
30160: --
30161: ------------------------------------------------------------------------------------------------
30162: -- 4219869 Business Flow
30163: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
30164: -- Prior Entry. Currently, the following code is always generated.
30165: ------------------------------------------------------------------------------------------------
30166: -- No ValidateCurrentLine for business flow method of Prior Entry
30167:
30168: ------------------------------------------------------------------------------------
30169: -- 4219869 Business Flow
30170: -- Populated credit and debit amounts -- Need to generate this within IF
30171: ------------------------------------------------------------------------------------
30172: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
30173:
30174: ----------------------------------------------------------------------------------
30175: -- 4219869 Business Flow
30176: -- Update journal entry status -- Need to generate this within IF
30200: -- To allow MPA report to determine if it should generate report process
30201: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
30202: ------------------------------------------------------------------------------------------
30203:
30204: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
30205: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
30206: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
30207: -- call ADRs
30208: -- Bug 4922099
30201: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
30202: ------------------------------------------------------------------------------------------
30203:
30204: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
30205: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
30206: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
30207: -- call ADRs
30208: -- Bug 4922099
30209: --
30222:
30223: --
30224: -- Update the line information that should be overwritten
30225: --
30226: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30227: p_header_num => 1);
30228: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30229:
30230: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30224: -- Update the line information that should be overwritten
30225: --
30226: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30227: p_header_num => 1);
30228: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30229:
30230: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30231:
30232: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30226: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30227: p_header_num => 1);
30228: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30229:
30230: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30231:
30232: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30233: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
30234: END IF;
30229:
30230: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30231:
30232: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30233: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
30234: END IF;
30235:
30236: --
30237: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
30236: --
30237: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
30238: --
30239: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
30240: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
30241: ELSE
30242: ---------------------------------------------------------------------------------------------------
30243: -- 4262811a Switch Sign
30244: ---------------------------------------------------------------------------------------------------
30241: ELSE
30242: ---------------------------------------------------------------------------------------------------
30243: -- 4262811a Switch Sign
30244: ---------------------------------------------------------------------------------------------------
30245: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30246: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30247: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30248: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30249: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30242: ---------------------------------------------------------------------------------------------------
30243: -- 4262811a Switch Sign
30244: ---------------------------------------------------------------------------------------------------
30245: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30246: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30247: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30248: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30249: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30250: -- 5132302
30243: -- 4262811a Switch Sign
30244: ---------------------------------------------------------------------------------------------------
30245: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30246: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30247: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30248: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30249: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30250: -- 5132302
30251: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30244: ---------------------------------------------------------------------------------------------------
30245: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30246: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30247: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30248: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30249: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30250: -- 5132302
30251: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30252: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30245: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30246: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30247: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30248: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30249: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30250: -- 5132302
30251: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30252: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30253:
30247: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30248: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30249: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30250: -- 5132302
30251: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30252: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30253:
30254: END IF;
30255:
30248: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30249: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30250: -- 5132302
30251: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30252: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30253:
30254: END IF;
30255:
30256: -- 4955764
30253:
30254: END IF;
30255:
30256: -- 4955764
30257: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30258: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30259:
30260:
30261: XLA_AE_LINES_PKG.ValidateCurrentLine;
30257: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30258: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30259:
30260:
30261: XLA_AE_LINES_PKG.ValidateCurrentLine;
30262: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
30263:
30264: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
30265: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
30258: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30259:
30260:
30261: XLA_AE_LINES_PKG.ValidateCurrentLine;
30262: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
30263:
30264: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
30265: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
30266: ,p_balance_type_code => l_balance_type_code);
30427: --
30428: -- bulk performance
30429: --
30430: l_balance_type_code VARCHAR2(1);
30431: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
30432: l_log_module VARCHAR2(240);
30433:
30434: --
30435: -- Upgrade strategy
30499: ') = 'REMITTANCE_OCCURRENCE'
30500: THEN
30501:
30502: --
30503: XLA_AE_LINES_PKG.SetNewLine;
30504:
30505: p_balance_type_code := l_balance_type_code;
30506: -- set the flag so later we will know whether the gain loss line needs to be created
30507:
30511:
30512: --
30513: -- bulk performance
30514: --
30515: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
30516: p_header_num => 0); -- 4262811
30517: --
30518: -- set accounting line options
30519: --
30516: p_header_num => 0); -- 4262811
30517: --
30518: -- set accounting line options
30519: --
30520: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
30521: p_natural_side_code => 'D'
30522: , p_gain_or_loss_flag => 'N'
30523: , p_gl_transfer_mode_code => 'S'
30524: , p_acct_entry_type_code => 'A'
30530: --
30531: --
30532: -- set accounting line type info
30533: --
30534: xla_ae_lines_pkg.SetAcctLineType
30535: (p_component_type => l_component_type
30536: ,p_event_type_code => l_event_type_code
30537: ,p_line_definition_owner_code => l_line_definition_owner_code
30538: ,p_line_definition_code => l_line_definition_code
30544: ,p_event_class_code => l_event_class_code);
30545: --
30546: -- set accounting class
30547: --
30548: xla_ae_lines_pkg.SetAcctClass(
30549: p_accounting_class_code => 'FACTOR'
30550: , p_ae_header_id => l_ae_header_id
30551: );
30552:
30552:
30553: --
30554: -- set rounding class
30555: --
30556: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
30557: 'FACTOR';
30558:
30559: --
30560: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30556: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
30557: 'FACTOR';
30558:
30559: --
30560: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30561: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30562: --
30563: -- bulk performance
30564: --
30557: 'FACTOR';
30558:
30559: --
30560: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30561: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30562: --
30563: -- bulk performance
30564: --
30565: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30561: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30562: --
30563: -- bulk performance
30564: --
30565: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30566:
30567: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30568: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30569:
30563: -- bulk performance
30564: --
30565: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30566:
30567: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30568: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30569:
30570: -- 4955764
30571: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30567: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30568: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30569:
30570: -- 4955764
30571: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30572: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
30573:
30574: -- 4458381 Public Sector Enh
30575:
30633: l_rec_acct_attrs.array_char_value(21) := p_source_84;
30634: l_rec_acct_attrs.array_acct_attr_code(22) := 'TRX_ROUNDING_REF';
30635: l_rec_acct_attrs.array_num_value(22) := to_char(p_source_82);
30636:
30637: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30638: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30639:
30640: ---------------------------------------------------------------------------------------------------------------
30641: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30634: l_rec_acct_attrs.array_acct_attr_code(22) := 'TRX_ROUNDING_REF';
30635: l_rec_acct_attrs.array_num_value(22) := to_char(p_source_82);
30636:
30637: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30638: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30639:
30640: ---------------------------------------------------------------------------------------------------------------
30641: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30642: ---------------------------------------------------------------------------------------------------------------
30637: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30638: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30639:
30640: ---------------------------------------------------------------------------------------------------------------
30641: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30642: ---------------------------------------------------------------------------------------------------------------
30643: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30644:
30645: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30639:
30640: ---------------------------------------------------------------------------------------------------------------
30641: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30642: ---------------------------------------------------------------------------------------------------------------
30643: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30644:
30645: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30646: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30647:
30641: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30642: ---------------------------------------------------------------------------------------------------------------
30643: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30644:
30645: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30646: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30647:
30648: IF xla_accounting_cache_pkg.GetValueChar
30649: (p_source_code => 'LEDGER_CATEGORY_CODE'
30642: ---------------------------------------------------------------------------------------------------------------
30643: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30644:
30645: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30646: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30647:
30648: IF xla_accounting_cache_pkg.GetValueChar
30649: (p_source_code => 'LEDGER_CATEGORY_CODE'
30650: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
30653: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
30654: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
30655: )
30656: THEN
30657: xla_ae_lines_pkg.BflowUpgEntry
30658: (p_business_method_code => l_bflow_method_code
30659: ,p_business_class_code => l_bflow_class_code
30660: ,p_balance_type => l_balance_type_code);
30661: ELSE
30670: --
30671: -- call description
30672: --
30673:
30674: xla_ae_lines_pkg.SetLineDescription(
30675: p_ae_header_id => l_ae_header_id
30676: ,p_description => Description_4 (
30677: p_application_id => p_application_id
30678: , p_ae_header_id => l_ae_header_id
30705: , x_value_type_code => l_adr_value_type_code
30706: , p_side => 'NA'
30707: );
30708:
30709: xla_ae_lines_pkg.set_ccid(
30710: p_code_combination_id => l_ccid
30711: , p_value_type_code => l_adr_value_type_code
30712: , p_transaction_coa_id => l_adr_transaction_coa_id
30713: , p_accounting_coa_id => l_adr_accounting_coa_id
30741: xla_accounting_err_pkg.build_message
30742: (p_appli_s_name => 'XLA'
30743: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
30744: ,p_token_1 => 'LINE_NUMBER'
30745: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
30746: ,p_token_2 => 'LINE_TYPE_NAME'
30747: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
30748: l_component_type
30749: ,l_component_code
30777: --
30778: --
30779: ------------------------------------------------------------------------------------------------
30780: -- 4219869 Business Flow
30781: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
30782: -- Prior Entry. Currently, the following code is always generated.
30783: ------------------------------------------------------------------------------------------------
30784: XLA_AE_LINES_PKG.ValidateCurrentLine;
30785:
30780: -- 4219869 Business Flow
30781: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
30782: -- Prior Entry. Currently, the following code is always generated.
30783: ------------------------------------------------------------------------------------------------
30784: XLA_AE_LINES_PKG.ValidateCurrentLine;
30785:
30786: ------------------------------------------------------------------------------------
30787: -- 4219869 Business Flow
30788: -- Populated credit and debit amounts -- Need to generate this within IF
30786: ------------------------------------------------------------------------------------
30787: -- 4219869 Business Flow
30788: -- Populated credit and debit amounts -- Need to generate this within IF
30789: ------------------------------------------------------------------------------------
30790: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
30791:
30792: ----------------------------------------------------------------------------------
30793: -- 4219869 Business Flow
30794: -- Update journal entry status -- Need to generate this within IF
30818: -- To allow MPA report to determine if it should generate report process
30819: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
30820: ------------------------------------------------------------------------------------------
30821:
30822: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
30823: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
30824: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
30825: -- call ADRs
30826: -- Bug 4922099
30819: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
30820: ------------------------------------------------------------------------------------------
30821:
30822: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
30823: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
30824: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
30825: -- call ADRs
30826: -- Bug 4922099
30827: --
30843: , x_value_type_code => l_adr_value_type_code
30844: , p_side => 'NA'
30845: );
30846:
30847: xla_ae_lines_pkg.set_ccid(
30848: p_code_combination_id => l_ccid
30849: , p_value_type_code => l_adr_value_type_code
30850: , p_transaction_coa_id => l_adr_transaction_coa_id
30851: , p_accounting_coa_id => l_adr_accounting_coa_id
30866:
30867: --
30868: -- Update the line information that should be overwritten
30869: --
30870: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30871: p_header_num => 1);
30872: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30873:
30874: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30868: -- Update the line information that should be overwritten
30869: --
30870: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30871: p_header_num => 1);
30872: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30873:
30874: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30875:
30876: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30870: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30871: p_header_num => 1);
30872: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30873:
30874: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30875:
30876: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30877: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
30878: END IF;
30873:
30874: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30875:
30876: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30877: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
30878: END IF;
30879:
30880: --
30881: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
30880: --
30881: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
30882: --
30883: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
30884: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
30885: ELSE
30886: ---------------------------------------------------------------------------------------------------
30887: -- 4262811a Switch Sign
30888: ---------------------------------------------------------------------------------------------------
30885: ELSE
30886: ---------------------------------------------------------------------------------------------------
30887: -- 4262811a Switch Sign
30888: ---------------------------------------------------------------------------------------------------
30889: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30891: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30886: ---------------------------------------------------------------------------------------------------
30887: -- 4262811a Switch Sign
30888: ---------------------------------------------------------------------------------------------------
30889: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30891: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30894: -- 5132302
30887: -- 4262811a Switch Sign
30888: ---------------------------------------------------------------------------------------------------
30889: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30891: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30894: -- 5132302
30895: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30888: ---------------------------------------------------------------------------------------------------
30889: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30891: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30894: -- 5132302
30895: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30896: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30889: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30891: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30894: -- 5132302
30895: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30896: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30897:
30891: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30894: -- 5132302
30895: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30896: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30897:
30898: END IF;
30899:
30892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30894: -- 5132302
30895: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30896: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30897:
30898: END IF;
30899:
30900: -- 4955764
30897:
30898: END IF;
30899:
30900: -- 4955764
30901: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30902: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30903:
30904:
30905: XLA_AE_LINES_PKG.ValidateCurrentLine;
30901: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30902: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30903:
30904:
30905: XLA_AE_LINES_PKG.ValidateCurrentLine;
30906: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
30907:
30908: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
30909: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
30902: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30903:
30904:
30905: XLA_AE_LINES_PKG.ValidateCurrentLine;
30906: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
30907:
30908: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
30909: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
30910: ,p_balance_type_code => l_balance_type_code);
31068: --
31069: -- bulk performance
31070: --
31071: l_balance_type_code VARCHAR2(1);
31072: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
31073: l_log_module VARCHAR2(240);
31074:
31075: --
31076: -- Upgrade strategy
31140: ') = 'FACTORING'
31141: THEN
31142:
31143: --
31144: XLA_AE_LINES_PKG.SetNewLine;
31145:
31146: p_balance_type_code := l_balance_type_code;
31147: -- set the flag so later we will know whether the gain loss line needs to be created
31148:
31152:
31153: --
31154: -- bulk performance
31155: --
31156: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
31157: p_header_num => 0); -- 4262811
31158: --
31159: -- set accounting line options
31160: --
31157: p_header_num => 0); -- 4262811
31158: --
31159: -- set accounting line options
31160: --
31161: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
31162: p_natural_side_code => 'C'
31163: , p_gain_or_loss_flag => 'N'
31164: , p_gl_transfer_mode_code => 'S'
31165: , p_acct_entry_type_code => 'A'
31171: --
31172: --
31173: -- set accounting line type info
31174: --
31175: xla_ae_lines_pkg.SetAcctLineType
31176: (p_component_type => l_component_type
31177: ,p_event_type_code => l_event_type_code
31178: ,p_line_definition_owner_code => l_line_definition_owner_code
31179: ,p_line_definition_code => l_line_definition_code
31185: ,p_event_class_code => l_event_class_code);
31186: --
31187: -- set accounting class
31188: --
31189: xla_ae_lines_pkg.SetAcctClass(
31190: p_accounting_class_code => 'CASH'
31191: , p_ae_header_id => l_ae_header_id
31192: );
31193:
31193:
31194: --
31195: -- set rounding class
31196: --
31197: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
31198: 'CASH';
31199:
31200: --
31201: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
31197: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
31198: 'CASH';
31199:
31200: --
31201: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
31202: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
31203: --
31204: -- bulk performance
31205: --
31198: 'CASH';
31199:
31200: --
31201: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
31202: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
31203: --
31204: -- bulk performance
31205: --
31206: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
31202: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
31203: --
31204: -- bulk performance
31205: --
31206: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
31207:
31208: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
31209: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
31210:
31204: -- bulk performance
31205: --
31206: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
31207:
31208: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
31209: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
31210:
31211: -- 4955764
31212: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31208: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
31209: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
31210:
31211: -- 4955764
31212: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31213: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
31214:
31215: -- 4458381 Public Sector Enh
31216:
31274: l_rec_acct_attrs.array_char_value(21) := p_source_84;
31275: l_rec_acct_attrs.array_acct_attr_code(22) := 'TRX_ROUNDING_REF';
31276: l_rec_acct_attrs.array_num_value(22) := to_char(p_source_82);
31277:
31278: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
31279: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
31280:
31281: ---------------------------------------------------------------------------------------------------------------
31282: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31275: l_rec_acct_attrs.array_acct_attr_code(22) := 'TRX_ROUNDING_REF';
31276: l_rec_acct_attrs.array_num_value(22) := to_char(p_source_82);
31277:
31278: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
31279: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
31280:
31281: ---------------------------------------------------------------------------------------------------------------
31282: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31283: ---------------------------------------------------------------------------------------------------------------
31278: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
31279: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
31280:
31281: ---------------------------------------------------------------------------------------------------------------
31282: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31283: ---------------------------------------------------------------------------------------------------------------
31284: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31285:
31286: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31280:
31281: ---------------------------------------------------------------------------------------------------------------
31282: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31283: ---------------------------------------------------------------------------------------------------------------
31284: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31285:
31286: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31287: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31288:
31282: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31283: ---------------------------------------------------------------------------------------------------------------
31284: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31285:
31286: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31287: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31288:
31289: IF xla_accounting_cache_pkg.GetValueChar
31290: (p_source_code => 'LEDGER_CATEGORY_CODE'
31283: ---------------------------------------------------------------------------------------------------------------
31284: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31285:
31286: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31287: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31288:
31289: IF xla_accounting_cache_pkg.GetValueChar
31290: (p_source_code => 'LEDGER_CATEGORY_CODE'
31291: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
31294: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
31295: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
31296: )
31297: THEN
31298: xla_ae_lines_pkg.BflowUpgEntry
31299: (p_business_method_code => l_bflow_method_code
31300: ,p_business_class_code => l_bflow_class_code
31301: ,p_balance_type => l_balance_type_code);
31302: ELSE
31311: --
31312: -- call description
31313: --
31314:
31315: xla_ae_lines_pkg.SetLineDescription(
31316: p_ae_header_id => l_ae_header_id
31317: ,p_description => Description_5 (
31318: p_application_id => p_application_id
31319: , p_ae_header_id => l_ae_header_id
31348: , x_value_type_code => l_adr_value_type_code
31349: , p_side => 'NA'
31350: );
31351:
31352: xla_ae_lines_pkg.set_ccid(
31353: p_code_combination_id => l_ccid
31354: , p_value_type_code => l_adr_value_type_code
31355: , p_transaction_coa_id => l_adr_transaction_coa_id
31356: , p_accounting_coa_id => l_adr_accounting_coa_id
31384: xla_accounting_err_pkg.build_message
31385: (p_appli_s_name => 'XLA'
31386: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
31387: ,p_token_1 => 'LINE_NUMBER'
31388: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
31389: ,p_token_2 => 'LINE_TYPE_NAME'
31390: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
31391: l_component_type
31392: ,l_component_code
31420: --
31421: --
31422: ------------------------------------------------------------------------------------------------
31423: -- 4219869 Business Flow
31424: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
31425: -- Prior Entry. Currently, the following code is always generated.
31426: ------------------------------------------------------------------------------------------------
31427: XLA_AE_LINES_PKG.ValidateCurrentLine;
31428:
31423: -- 4219869 Business Flow
31424: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
31425: -- Prior Entry. Currently, the following code is always generated.
31426: ------------------------------------------------------------------------------------------------
31427: XLA_AE_LINES_PKG.ValidateCurrentLine;
31428:
31429: ------------------------------------------------------------------------------------
31430: -- 4219869 Business Flow
31431: -- Populated credit and debit amounts -- Need to generate this within IF
31429: ------------------------------------------------------------------------------------
31430: -- 4219869 Business Flow
31431: -- Populated credit and debit amounts -- Need to generate this within IF
31432: ------------------------------------------------------------------------------------
31433: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
31434:
31435: ----------------------------------------------------------------------------------
31436: -- 4219869 Business Flow
31437: -- Update journal entry status -- Need to generate this within IF
31461: -- To allow MPA report to determine if it should generate report process
31462: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
31463: ------------------------------------------------------------------------------------------
31464:
31465: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
31466: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
31467: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
31468: -- call ADRs
31469: -- Bug 4922099
31462: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
31463: ------------------------------------------------------------------------------------------
31464:
31465: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
31466: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
31467: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
31468: -- call ADRs
31469: -- Bug 4922099
31470: --
31486: , x_value_type_code => l_adr_value_type_code
31487: , p_side => 'NA'
31488: );
31489:
31490: xla_ae_lines_pkg.set_ccid(
31491: p_code_combination_id => l_ccid
31492: , p_value_type_code => l_adr_value_type_code
31493: , p_transaction_coa_id => l_adr_transaction_coa_id
31494: , p_accounting_coa_id => l_adr_accounting_coa_id
31509:
31510: --
31511: -- Update the line information that should be overwritten
31512: --
31513: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
31514: p_header_num => 1);
31515: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
31516:
31517: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31511: -- Update the line information that should be overwritten
31512: --
31513: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
31514: p_header_num => 1);
31515: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
31516:
31517: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31518:
31519: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
31513: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
31514: p_header_num => 1);
31515: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
31516:
31517: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31518:
31519: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
31520: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
31521: END IF;
31516:
31517: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31518:
31519: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
31520: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
31521: END IF;
31522:
31523: --
31524: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
31523: --
31524: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
31525: --
31526: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
31527: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
31528: ELSE
31529: ---------------------------------------------------------------------------------------------------
31530: -- 4262811a Switch Sign
31531: ---------------------------------------------------------------------------------------------------
31528: ELSE
31529: ---------------------------------------------------------------------------------------------------
31530: -- 4262811a Switch Sign
31531: ---------------------------------------------------------------------------------------------------
31532: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31533: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31534: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31535: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31536: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31529: ---------------------------------------------------------------------------------------------------
31530: -- 4262811a Switch Sign
31531: ---------------------------------------------------------------------------------------------------
31532: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31533: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31534: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31535: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31536: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31537: -- 5132302
31530: -- 4262811a Switch Sign
31531: ---------------------------------------------------------------------------------------------------
31532: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31533: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31534: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31535: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31536: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31537: -- 5132302
31538: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31531: ---------------------------------------------------------------------------------------------------
31532: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31533: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31534: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31535: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31536: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31537: -- 5132302
31538: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31539: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31532: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31533: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31534: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31535: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31536: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31537: -- 5132302
31538: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31539: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31540:
31534: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31535: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31536: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31537: -- 5132302
31538: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31539: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31540:
31541: END IF;
31542:
31535: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31536: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31537: -- 5132302
31538: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31539: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31540:
31541: END IF;
31542:
31543: -- 4955764
31540:
31541: END IF;
31542:
31543: -- 4955764
31544: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31545: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
31546:
31547:
31548: XLA_AE_LINES_PKG.ValidateCurrentLine;
31544: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31545: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
31546:
31547:
31548: XLA_AE_LINES_PKG.ValidateCurrentLine;
31549: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
31550:
31551: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
31552: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
31545: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
31546:
31547:
31548: XLA_AE_LINES_PKG.ValidateCurrentLine;
31549: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
31550:
31551: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
31552: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
31553: ,p_balance_type_code => l_balance_type_code);
31714: --
31715: -- bulk performance
31716: --
31717: l_balance_type_code VARCHAR2(1);
31718: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
31719: l_log_module VARCHAR2(240);
31720:
31721: --
31722: -- Upgrade strategy
31786: ') = 'REMITTANCE_OCCURRENCE'
31787: THEN
31788:
31789: --
31790: XLA_AE_LINES_PKG.SetNewLine;
31791:
31792: p_balance_type_code := l_balance_type_code;
31793: -- set the flag so later we will know whether the gain loss line needs to be created
31794:
31798:
31799: --
31800: -- bulk performance
31801: --
31802: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
31803: p_header_num => 0); -- 4262811
31804: --
31805: -- set accounting line options
31806: --
31803: p_header_num => 0); -- 4262811
31804: --
31805: -- set accounting line options
31806: --
31807: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
31808: p_natural_side_code => 'C'
31809: , p_gain_or_loss_flag => 'N'
31810: , p_gl_transfer_mode_code => 'S'
31811: , p_acct_entry_type_code => 'A'
31817: --
31818: --
31819: -- set accounting line type info
31820: --
31821: xla_ae_lines_pkg.SetAcctLineType
31822: (p_component_type => l_component_type
31823: ,p_event_type_code => l_event_type_code
31824: ,p_line_definition_owner_code => l_line_definition_owner_code
31825: ,p_line_definition_code => l_line_definition_code
31831: ,p_event_class_code => l_event_class_code);
31832: --
31833: -- set accounting class
31834: --
31835: xla_ae_lines_pkg.SetAcctClass(
31836: p_accounting_class_code => 'FACTOR'
31837: , p_ae_header_id => l_ae_header_id
31838: );
31839:
31839:
31840: --
31841: -- set rounding class
31842: --
31843: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
31844: 'FACTOR';
31845:
31846: --
31847: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
31843: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
31844: 'FACTOR';
31845:
31846: --
31847: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
31848: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
31849: --
31850: -- bulk performance
31851: --
31844: 'FACTOR';
31845:
31846: --
31847: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
31848: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
31849: --
31850: -- bulk performance
31851: --
31852: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
31848: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
31849: --
31850: -- bulk performance
31851: --
31852: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
31853:
31854: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
31855: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
31856:
31850: -- bulk performance
31851: --
31852: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
31853:
31854: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
31855: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
31856:
31857: -- 4955764
31858: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31854: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
31855: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
31856:
31857: -- 4955764
31858: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31859: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
31860:
31861: -- 4458381 Public Sector Enh
31862:
31920: l_rec_acct_attrs.array_char_value(21) := p_source_84;
31921: l_rec_acct_attrs.array_acct_attr_code(22) := 'TRX_ROUNDING_REF';
31922: l_rec_acct_attrs.array_num_value(22) := to_char(p_source_82);
31923:
31924: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
31925: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
31926:
31927: ---------------------------------------------------------------------------------------------------------------
31928: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31921: l_rec_acct_attrs.array_acct_attr_code(22) := 'TRX_ROUNDING_REF';
31922: l_rec_acct_attrs.array_num_value(22) := to_char(p_source_82);
31923:
31924: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
31925: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
31926:
31927: ---------------------------------------------------------------------------------------------------------------
31928: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31929: ---------------------------------------------------------------------------------------------------------------
31924: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
31925: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
31926:
31927: ---------------------------------------------------------------------------------------------------------------
31928: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31929: ---------------------------------------------------------------------------------------------------------------
31930: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31931:
31932: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31926:
31927: ---------------------------------------------------------------------------------------------------------------
31928: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31929: ---------------------------------------------------------------------------------------------------------------
31930: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31931:
31932: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31933: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31934:
31928: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31929: ---------------------------------------------------------------------------------------------------------------
31930: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31931:
31932: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31933: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31934:
31935: IF xla_accounting_cache_pkg.GetValueChar
31936: (p_source_code => 'LEDGER_CATEGORY_CODE'
31929: ---------------------------------------------------------------------------------------------------------------
31930: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31931:
31932: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31933: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31934:
31935: IF xla_accounting_cache_pkg.GetValueChar
31936: (p_source_code => 'LEDGER_CATEGORY_CODE'
31937: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
31940: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
31941: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
31942: )
31943: THEN
31944: xla_ae_lines_pkg.BflowUpgEntry
31945: (p_business_method_code => l_bflow_method_code
31946: ,p_business_class_code => l_bflow_class_code
31947: ,p_balance_type => l_balance_type_code);
31948: ELSE
31957: --
31958: -- call description
31959: --
31960:
31961: xla_ae_lines_pkg.SetLineDescription(
31962: p_ae_header_id => l_ae_header_id
31963: ,p_description => Description_7 (
31964: p_application_id => p_application_id
31965: , p_ae_header_id => l_ae_header_id
31992: , x_value_type_code => l_adr_value_type_code
31993: , p_side => 'NA'
31994: );
31995:
31996: xla_ae_lines_pkg.set_ccid(
31997: p_code_combination_id => l_ccid
31998: , p_value_type_code => l_adr_value_type_code
31999: , p_transaction_coa_id => l_adr_transaction_coa_id
32000: , p_accounting_coa_id => l_adr_accounting_coa_id
32028: xla_accounting_err_pkg.build_message
32029: (p_appli_s_name => 'XLA'
32030: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
32031: ,p_token_1 => 'LINE_NUMBER'
32032: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
32033: ,p_token_2 => 'LINE_TYPE_NAME'
32034: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
32035: l_component_type
32036: ,l_component_code
32064: --
32065: --
32066: ------------------------------------------------------------------------------------------------
32067: -- 4219869 Business Flow
32068: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
32069: -- Prior Entry. Currently, the following code is always generated.
32070: ------------------------------------------------------------------------------------------------
32071: XLA_AE_LINES_PKG.ValidateCurrentLine;
32072:
32067: -- 4219869 Business Flow
32068: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
32069: -- Prior Entry. Currently, the following code is always generated.
32070: ------------------------------------------------------------------------------------------------
32071: XLA_AE_LINES_PKG.ValidateCurrentLine;
32072:
32073: ------------------------------------------------------------------------------------
32074: -- 4219869 Business Flow
32075: -- Populated credit and debit amounts -- Need to generate this within IF
32073: ------------------------------------------------------------------------------------
32074: -- 4219869 Business Flow
32075: -- Populated credit and debit amounts -- Need to generate this within IF
32076: ------------------------------------------------------------------------------------
32077: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
32078:
32079: ----------------------------------------------------------------------------------
32080: -- 4219869 Business Flow
32081: -- Update journal entry status -- Need to generate this within IF
32105: -- To allow MPA report to determine if it should generate report process
32106: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
32107: ------------------------------------------------------------------------------------------
32108:
32109: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
32110: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
32111: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
32112: -- call ADRs
32113: -- Bug 4922099
32106: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
32107: ------------------------------------------------------------------------------------------
32108:
32109: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
32110: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
32111: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
32112: -- call ADRs
32113: -- Bug 4922099
32114: --
32130: , x_value_type_code => l_adr_value_type_code
32131: , p_side => 'NA'
32132: );
32133:
32134: xla_ae_lines_pkg.set_ccid(
32135: p_code_combination_id => l_ccid
32136: , p_value_type_code => l_adr_value_type_code
32137: , p_transaction_coa_id => l_adr_transaction_coa_id
32138: , p_accounting_coa_id => l_adr_accounting_coa_id
32153:
32154: --
32155: -- Update the line information that should be overwritten
32156: --
32157: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32158: p_header_num => 1);
32159: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32160:
32161: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32155: -- Update the line information that should be overwritten
32156: --
32157: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32158: p_header_num => 1);
32159: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32160:
32161: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32162:
32163: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32157: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32158: p_header_num => 1);
32159: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32160:
32161: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32162:
32163: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32164: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
32165: END IF;
32160:
32161: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32162:
32163: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32164: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
32165: END IF;
32166:
32167: --
32168: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
32167: --
32168: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
32169: --
32170: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
32171: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
32172: ELSE
32173: ---------------------------------------------------------------------------------------------------
32174: -- 4262811a Switch Sign
32175: ---------------------------------------------------------------------------------------------------
32172: ELSE
32173: ---------------------------------------------------------------------------------------------------
32174: -- 4262811a Switch Sign
32175: ---------------------------------------------------------------------------------------------------
32176: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32177: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32178: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32179: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32180: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32173: ---------------------------------------------------------------------------------------------------
32174: -- 4262811a Switch Sign
32175: ---------------------------------------------------------------------------------------------------
32176: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32177: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32178: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32179: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32180: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32181: -- 5132302
32174: -- 4262811a Switch Sign
32175: ---------------------------------------------------------------------------------------------------
32176: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32177: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32178: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32179: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32180: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32181: -- 5132302
32182: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32175: ---------------------------------------------------------------------------------------------------
32176: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32177: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32178: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32179: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32180: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32181: -- 5132302
32182: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32183: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32176: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32177: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32178: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32179: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32180: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32181: -- 5132302
32182: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32183: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32184:
32178: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32179: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32180: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32181: -- 5132302
32182: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32183: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32184:
32185: END IF;
32186:
32179: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32180: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32181: -- 5132302
32182: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32183: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32184:
32185: END IF;
32186:
32187: -- 4955764
32184:
32185: END IF;
32186:
32187: -- 4955764
32188: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32189: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32190:
32191:
32192: XLA_AE_LINES_PKG.ValidateCurrentLine;
32188: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32189: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32190:
32191:
32192: XLA_AE_LINES_PKG.ValidateCurrentLine;
32193: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
32194:
32195: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
32196: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
32189: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32190:
32191:
32192: XLA_AE_LINES_PKG.ValidateCurrentLine;
32193: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
32194:
32195: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
32196: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
32197: ,p_balance_type_code => l_balance_type_code);
32340: --
32341: -- bulk performance
32342: --
32343: l_balance_type_code VARCHAR2(1);
32344: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
32345: l_log_module VARCHAR2(240);
32346:
32347: --
32348: -- Upgrade strategy
32412: ') = 'RETURN_OCCURRENCE'
32413: THEN
32414:
32415: --
32416: XLA_AE_LINES_PKG.SetNewLine;
32417:
32418: p_balance_type_code := l_balance_type_code;
32419: -- set the flag so later we will know whether the gain loss line needs to be created
32420:
32424:
32425: --
32426: -- bulk performance
32427: --
32428: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
32429: p_header_num => 0); -- 4262811
32430: --
32431: -- set accounting line options
32432: --
32429: p_header_num => 0); -- 4262811
32430: --
32431: -- set accounting line options
32432: --
32433: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
32434: p_natural_side_code => 'D'
32435: , p_gain_or_loss_flag => 'N'
32436: , p_gl_transfer_mode_code => 'S'
32437: , p_acct_entry_type_code => 'A'
32443: --
32444: --
32445: -- set accounting line type info
32446: --
32447: xla_ae_lines_pkg.SetAcctLineType
32448: (p_component_type => l_component_type
32449: ,p_event_type_code => l_event_type_code
32450: ,p_line_definition_owner_code => l_line_definition_owner_code
32451: ,p_line_definition_code => l_line_definition_code
32457: ,p_event_class_code => l_event_class_code);
32458: --
32459: -- set accounting class
32460: --
32461: xla_ae_lines_pkg.SetAcctClass(
32462: p_accounting_class_code => 'FACTOR'
32463: , p_ae_header_id => l_ae_header_id
32464: );
32465:
32465:
32466: --
32467: -- set rounding class
32468: --
32469: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
32470: 'FACTOR';
32471:
32472: --
32473: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32469: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
32470: 'FACTOR';
32471:
32472: --
32473: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32474: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32475: --
32476: -- bulk performance
32477: --
32470: 'FACTOR';
32471:
32472: --
32473: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32474: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32475: --
32476: -- bulk performance
32477: --
32478: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32474: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32475: --
32476: -- bulk performance
32477: --
32478: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32479:
32480: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32481: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32482:
32476: -- bulk performance
32477: --
32478: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32479:
32480: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32481: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32482:
32483: -- 4955764
32484: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32480: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32481: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32482:
32483: -- 4955764
32484: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32485: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
32486:
32487: -- 4458381 Public Sector Enh
32488:
32536: l_rec_acct_attrs.array_char_value(16) := p_source_84;
32537: l_rec_acct_attrs.array_acct_attr_code(17) := 'TRX_ROUNDING_REF';
32538: l_rec_acct_attrs.array_num_value(17) := to_char(p_source_82);
32539:
32540: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
32541: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
32542:
32543: ---------------------------------------------------------------------------------------------------------------
32544: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32537: l_rec_acct_attrs.array_acct_attr_code(17) := 'TRX_ROUNDING_REF';
32538: l_rec_acct_attrs.array_num_value(17) := to_char(p_source_82);
32539:
32540: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
32541: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
32542:
32543: ---------------------------------------------------------------------------------------------------------------
32544: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32545: ---------------------------------------------------------------------------------------------------------------
32540: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
32541: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
32542:
32543: ---------------------------------------------------------------------------------------------------------------
32544: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32545: ---------------------------------------------------------------------------------------------------------------
32546: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32547:
32548: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32542:
32543: ---------------------------------------------------------------------------------------------------------------
32544: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32545: ---------------------------------------------------------------------------------------------------------------
32546: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32547:
32548: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32549: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32550:
32544: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32545: ---------------------------------------------------------------------------------------------------------------
32546: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32547:
32548: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32549: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32550:
32551: IF xla_accounting_cache_pkg.GetValueChar
32552: (p_source_code => 'LEDGER_CATEGORY_CODE'
32545: ---------------------------------------------------------------------------------------------------------------
32546: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32547:
32548: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32549: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32550:
32551: IF xla_accounting_cache_pkg.GetValueChar
32552: (p_source_code => 'LEDGER_CATEGORY_CODE'
32553: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
32556: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
32557: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
32558: )
32559: THEN
32560: xla_ae_lines_pkg.BflowUpgEntry
32561: (p_business_method_code => l_bflow_method_code
32562: ,p_business_class_code => l_bflow_class_code
32563: ,p_balance_type => l_balance_type_code);
32564: ELSE
32562: ,p_business_class_code => l_bflow_class_code
32563: ,p_balance_type => l_balance_type_code);
32564: ELSE
32565: NULL;
32566: XLA_AE_LINES_PKG.business_flow_validation(
32567: p_business_method_code => l_bflow_method_code
32568: ,p_business_class_code => l_bflow_class_code
32569: ,p_inherit_description_flag => l_inherit_desc_flag);
32570: END IF;
32609: xla_accounting_err_pkg.build_message
32610: (p_appli_s_name => 'XLA'
32611: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
32612: ,p_token_1 => 'LINE_NUMBER'
32613: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
32614: ,p_token_2 => 'LINE_TYPE_NAME'
32615: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
32616: l_component_type
32617: ,l_component_code
32645: --
32646: --
32647: ------------------------------------------------------------------------------------------------
32648: -- 4219869 Business Flow
32649: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
32650: -- Prior Entry. Currently, the following code is always generated.
32651: ------------------------------------------------------------------------------------------------
32652: -- No ValidateCurrentLine for business flow method of Prior Entry
32653:
32654: ------------------------------------------------------------------------------------
32655: -- 4219869 Business Flow
32656: -- Populated credit and debit amounts -- Need to generate this within IF
32657: ------------------------------------------------------------------------------------
32658: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
32659:
32660: ----------------------------------------------------------------------------------
32661: -- 4219869 Business Flow
32662: -- Update journal entry status -- Need to generate this within IF
32686: -- To allow MPA report to determine if it should generate report process
32687: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
32688: ------------------------------------------------------------------------------------------
32689:
32690: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
32691: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
32692: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
32693: -- call ADRs
32694: -- Bug 4922099
32687: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
32688: ------------------------------------------------------------------------------------------
32689:
32690: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
32691: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
32692: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
32693: -- call ADRs
32694: -- Bug 4922099
32695: --
32708:
32709: --
32710: -- Update the line information that should be overwritten
32711: --
32712: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32713: p_header_num => 1);
32714: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32715:
32716: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32710: -- Update the line information that should be overwritten
32711: --
32712: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32713: p_header_num => 1);
32714: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32715:
32716: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32717:
32718: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32712: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32713: p_header_num => 1);
32714: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32715:
32716: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32717:
32718: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32719: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
32720: END IF;
32715:
32716: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32717:
32718: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32719: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
32720: END IF;
32721:
32722: --
32723: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
32722: --
32723: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
32724: --
32725: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
32726: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
32727: ELSE
32728: ---------------------------------------------------------------------------------------------------
32729: -- 4262811a Switch Sign
32730: ---------------------------------------------------------------------------------------------------
32727: ELSE
32728: ---------------------------------------------------------------------------------------------------
32729: -- 4262811a Switch Sign
32730: ---------------------------------------------------------------------------------------------------
32731: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32732: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32733: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32734: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32735: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32728: ---------------------------------------------------------------------------------------------------
32729: -- 4262811a Switch Sign
32730: ---------------------------------------------------------------------------------------------------
32731: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32732: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32733: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32734: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32735: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32736: -- 5132302
32729: -- 4262811a Switch Sign
32730: ---------------------------------------------------------------------------------------------------
32731: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32732: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32733: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32734: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32735: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32736: -- 5132302
32737: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32730: ---------------------------------------------------------------------------------------------------
32731: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32732: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32733: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32734: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32735: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32736: -- 5132302
32737: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32738: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32731: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32732: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32733: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32734: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32735: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32736: -- 5132302
32737: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32738: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32739:
32733: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32734: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32735: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32736: -- 5132302
32737: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32738: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32739:
32740: END IF;
32741:
32734: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32735: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32736: -- 5132302
32737: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32738: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32739:
32740: END IF;
32741:
32742: -- 4955764
32739:
32740: END IF;
32741:
32742: -- 4955764
32743: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32744: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32745:
32746:
32747: XLA_AE_LINES_PKG.ValidateCurrentLine;
32743: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32744: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32745:
32746:
32747: XLA_AE_LINES_PKG.ValidateCurrentLine;
32748: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
32749:
32750: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
32751: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
32744: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32745:
32746:
32747: XLA_AE_LINES_PKG.ValidateCurrentLine;
32748: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
32749:
32750: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
32751: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
32752: ,p_balance_type_code => l_balance_type_code);
32910: --
32911: -- bulk performance
32912: --
32913: l_balance_type_code VARCHAR2(1);
32914: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
32915: l_log_module VARCHAR2(240);
32916:
32917: --
32918: -- Upgrade strategy
32980: ') = 'FACTORING'
32981: THEN
32982:
32983: --
32984: XLA_AE_LINES_PKG.SetNewLine;
32985:
32986: p_balance_type_code := l_balance_type_code;
32987: -- set the flag so later we will know whether the gain loss line needs to be created
32988:
32992:
32993: --
32994: -- bulk performance
32995: --
32996: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
32997: p_header_num => 0); -- 4262811
32998: --
32999: -- set accounting line options
33000: --
32997: p_header_num => 0); -- 4262811
32998: --
32999: -- set accounting line options
33000: --
33001: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
33002: p_natural_side_code => 'D'
33003: , p_gain_or_loss_flag => 'N'
33004: , p_gl_transfer_mode_code => 'S'
33005: , p_acct_entry_type_code => 'A'
33011: --
33012: --
33013: -- set accounting line type info
33014: --
33015: xla_ae_lines_pkg.SetAcctLineType
33016: (p_component_type => l_component_type
33017: ,p_event_type_code => l_event_type_code
33018: ,p_line_definition_owner_code => l_line_definition_owner_code
33019: ,p_line_definition_code => l_line_definition_code
33025: ,p_event_class_code => l_event_class_code);
33026: --
33027: -- set accounting class
33028: --
33029: xla_ae_lines_pkg.SetAcctClass(
33030: p_accounting_class_code => 'BANK_CHG'
33031: , p_ae_header_id => l_ae_header_id
33032: );
33033:
33033:
33034: --
33035: -- set rounding class
33036: --
33037: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
33038: 'BANK_CHG';
33039:
33040: --
33041: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33037: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
33038: 'BANK_CHG';
33039:
33040: --
33041: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33042: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33043: --
33044: -- bulk performance
33045: --
33038: 'BANK_CHG';
33039:
33040: --
33041: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33042: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33043: --
33044: -- bulk performance
33045: --
33046: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33042: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33043: --
33044: -- bulk performance
33045: --
33046: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33047:
33048: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33049: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33050:
33044: -- bulk performance
33045: --
33046: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33047:
33048: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33049: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33050:
33051: -- 4955764
33052: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33048: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33049: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33050:
33051: -- 4955764
33052: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33053: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
33054:
33055: -- 4458381 Public Sector Enh
33056:
33114: l_rec_acct_attrs.array_char_value(21) := p_source_84;
33115: l_rec_acct_attrs.array_acct_attr_code(22) := 'TRX_ROUNDING_REF';
33116: l_rec_acct_attrs.array_num_value(22) := to_char(p_source_82);
33117:
33118: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33119: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33120:
33121: ---------------------------------------------------------------------------------------------------------------
33122: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33115: l_rec_acct_attrs.array_acct_attr_code(22) := 'TRX_ROUNDING_REF';
33116: l_rec_acct_attrs.array_num_value(22) := to_char(p_source_82);
33117:
33118: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33119: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33120:
33121: ---------------------------------------------------------------------------------------------------------------
33122: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33123: ---------------------------------------------------------------------------------------------------------------
33118: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33119: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33120:
33121: ---------------------------------------------------------------------------------------------------------------
33122: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33123: ---------------------------------------------------------------------------------------------------------------
33124: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33125:
33126: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33120:
33121: ---------------------------------------------------------------------------------------------------------------
33122: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33123: ---------------------------------------------------------------------------------------------------------------
33124: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33125:
33126: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33127: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33128:
33122: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33123: ---------------------------------------------------------------------------------------------------------------
33124: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33125:
33126: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33127: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33128:
33129: IF xla_accounting_cache_pkg.GetValueChar
33130: (p_source_code => 'LEDGER_CATEGORY_CODE'
33123: ---------------------------------------------------------------------------------------------------------------
33124: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33125:
33126: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33127: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33128:
33129: IF xla_accounting_cache_pkg.GetValueChar
33130: (p_source_code => 'LEDGER_CATEGORY_CODE'
33131: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
33134: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
33135: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
33136: )
33137: THEN
33138: xla_ae_lines_pkg.BflowUpgEntry
33139: (p_business_method_code => l_bflow_method_code
33140: ,p_business_class_code => l_bflow_class_code
33141: ,p_balance_type => l_balance_type_code);
33142: ELSE
33151: --
33152: -- call description
33153: --
33154:
33155: xla_ae_lines_pkg.SetLineDescription(
33156: p_ae_header_id => l_ae_header_id
33157: ,p_description => Description_8 (
33158: p_application_id => p_application_id
33159: , p_ae_header_id => l_ae_header_id
33186: , x_value_type_code => l_adr_value_type_code
33187: , p_side => 'NA'
33188: );
33189:
33190: xla_ae_lines_pkg.set_ccid(
33191: p_code_combination_id => l_ccid
33192: , p_value_type_code => l_adr_value_type_code
33193: , p_transaction_coa_id => l_adr_transaction_coa_id
33194: , p_accounting_coa_id => l_adr_accounting_coa_id
33222: xla_accounting_err_pkg.build_message
33223: (p_appli_s_name => 'XLA'
33224: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
33225: ,p_token_1 => 'LINE_NUMBER'
33226: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
33227: ,p_token_2 => 'LINE_TYPE_NAME'
33228: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
33229: l_component_type
33230: ,l_component_code
33258: --
33259: --
33260: ------------------------------------------------------------------------------------------------
33261: -- 4219869 Business Flow
33262: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
33263: -- Prior Entry. Currently, the following code is always generated.
33264: ------------------------------------------------------------------------------------------------
33265: XLA_AE_LINES_PKG.ValidateCurrentLine;
33266:
33261: -- 4219869 Business Flow
33262: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
33263: -- Prior Entry. Currently, the following code is always generated.
33264: ------------------------------------------------------------------------------------------------
33265: XLA_AE_LINES_PKG.ValidateCurrentLine;
33266:
33267: ------------------------------------------------------------------------------------
33268: -- 4219869 Business Flow
33269: -- Populated credit and debit amounts -- Need to generate this within IF
33267: ------------------------------------------------------------------------------------
33268: -- 4219869 Business Flow
33269: -- Populated credit and debit amounts -- Need to generate this within IF
33270: ------------------------------------------------------------------------------------
33271: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33272:
33273: ----------------------------------------------------------------------------------
33274: -- 4219869 Business Flow
33275: -- Update journal entry status -- Need to generate this within IF
33299: -- To allow MPA report to determine if it should generate report process
33300: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
33301: ------------------------------------------------------------------------------------------
33302:
33303: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
33304: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
33305: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
33306: -- call ADRs
33307: -- Bug 4922099
33300: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
33301: ------------------------------------------------------------------------------------------
33302:
33303: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
33304: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
33305: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
33306: -- call ADRs
33307: -- Bug 4922099
33308: --
33324: , x_value_type_code => l_adr_value_type_code
33325: , p_side => 'NA'
33326: );
33327:
33328: xla_ae_lines_pkg.set_ccid(
33329: p_code_combination_id => l_ccid
33330: , p_value_type_code => l_adr_value_type_code
33331: , p_transaction_coa_id => l_adr_transaction_coa_id
33332: , p_accounting_coa_id => l_adr_accounting_coa_id
33347:
33348: --
33349: -- Update the line information that should be overwritten
33350: --
33351: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33352: p_header_num => 1);
33353: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33354:
33355: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33349: -- Update the line information that should be overwritten
33350: --
33351: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33352: p_header_num => 1);
33353: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33354:
33355: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33356:
33357: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33351: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33352: p_header_num => 1);
33353: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33354:
33355: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33356:
33357: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33358: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
33359: END IF;
33354:
33355: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33356:
33357: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33358: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
33359: END IF;
33360:
33361: --
33362: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
33361: --
33362: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
33363: --
33364: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
33365: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
33366: ELSE
33367: ---------------------------------------------------------------------------------------------------
33368: -- 4262811a Switch Sign
33369: ---------------------------------------------------------------------------------------------------
33366: ELSE
33367: ---------------------------------------------------------------------------------------------------
33368: -- 4262811a Switch Sign
33369: ---------------------------------------------------------------------------------------------------
33370: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33371: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33372: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33373: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33374: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33367: ---------------------------------------------------------------------------------------------------
33368: -- 4262811a Switch Sign
33369: ---------------------------------------------------------------------------------------------------
33370: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33371: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33372: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33373: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33374: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33375: -- 5132302
33368: -- 4262811a Switch Sign
33369: ---------------------------------------------------------------------------------------------------
33370: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33371: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33372: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33373: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33374: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33375: -- 5132302
33376: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33369: ---------------------------------------------------------------------------------------------------
33370: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33371: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33372: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33373: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33374: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33375: -- 5132302
33376: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33377: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33370: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33371: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33372: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33373: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33374: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33375: -- 5132302
33376: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33377: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33378:
33372: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33373: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33374: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33375: -- 5132302
33376: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33377: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33378:
33379: END IF;
33380:
33373: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33374: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33375: -- 5132302
33376: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33377: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33378:
33379: END IF;
33380:
33381: -- 4955764
33378:
33379: END IF;
33380:
33381: -- 4955764
33382: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33383: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33384:
33385:
33386: XLA_AE_LINES_PKG.ValidateCurrentLine;
33382: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33383: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33384:
33385:
33386: XLA_AE_LINES_PKG.ValidateCurrentLine;
33387: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33388:
33389: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
33390: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
33383: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33384:
33385:
33386: XLA_AE_LINES_PKG.ValidateCurrentLine;
33387: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33388:
33389: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
33390: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
33391: ,p_balance_type_code => l_balance_type_code);
33522: --
33523: -- bulk performance
33524: --
33525: l_balance_type_code VARCHAR2(1);
33526: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
33527: l_log_module VARCHAR2(240);
33528:
33529: --
33530: -- Upgrade strategy
33590: ') = 'REC'
33591: THEN
33592:
33593: --
33594: XLA_AE_LINES_PKG.SetNewLine;
33595:
33596: p_balance_type_code := l_balance_type_code;
33597: -- set the flag so later we will know whether the gain loss line needs to be created
33598:
33602:
33603: --
33604: -- bulk performance
33605: --
33606: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
33607: p_header_num => 0); -- 4262811
33608: --
33609: -- set accounting line options
33610: --
33607: p_header_num => 0); -- 4262811
33608: --
33609: -- set accounting line options
33610: --
33611: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
33612: p_natural_side_code => 'D'
33613: , p_gain_or_loss_flag => 'N'
33614: , p_gl_transfer_mode_code => 'S'
33615: , p_acct_entry_type_code => 'A'
33621: --
33622: --
33623: -- set accounting line type info
33624: --
33625: xla_ae_lines_pkg.SetAcctLineType
33626: (p_component_type => l_component_type
33627: ,p_event_type_code => l_event_type_code
33628: ,p_line_definition_owner_code => l_line_definition_owner_code
33629: ,p_line_definition_code => l_line_definition_code
33635: ,p_event_class_code => l_event_class_code);
33636: --
33637: -- set accounting class
33638: --
33639: xla_ae_lines_pkg.SetAcctClass(
33640: p_accounting_class_code => 'RECEIVABLE'
33641: , p_ae_header_id => l_ae_header_id
33642: );
33643:
33643:
33644: --
33645: -- set rounding class
33646: --
33647: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
33648: 'RECEIVABLE';
33649:
33650: --
33651: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33647: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
33648: 'RECEIVABLE';
33649:
33650: --
33651: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33652: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33653: --
33654: -- bulk performance
33655: --
33648: 'RECEIVABLE';
33649:
33650: --
33651: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33652: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33653: --
33654: -- bulk performance
33655: --
33656: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33652: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33653: --
33654: -- bulk performance
33655: --
33656: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33657:
33658: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33659: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33660:
33654: -- bulk performance
33655: --
33656: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33657:
33658: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33659: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33660:
33661: -- 4955764
33662: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33658: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33659: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33660:
33661: -- 4955764
33662: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33663: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
33664:
33665: -- 4458381 Public Sector Enh
33666:
33692: l_rec_acct_attrs.array_num_value(10) := p_source_38;
33693: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
33694: l_rec_acct_attrs.array_char_value(11) := p_source_39;
33695:
33696: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33697: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33698:
33699: ---------------------------------------------------------------------------------------------------------------
33700: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33693: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
33694: l_rec_acct_attrs.array_char_value(11) := p_source_39;
33695:
33696: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33697: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33698:
33699: ---------------------------------------------------------------------------------------------------------------
33700: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33701: ---------------------------------------------------------------------------------------------------------------
33696: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33697: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33698:
33699: ---------------------------------------------------------------------------------------------------------------
33700: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33701: ---------------------------------------------------------------------------------------------------------------
33702: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33703:
33704: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33698:
33699: ---------------------------------------------------------------------------------------------------------------
33700: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33701: ---------------------------------------------------------------------------------------------------------------
33702: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33703:
33704: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33705: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33706:
33700: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33701: ---------------------------------------------------------------------------------------------------------------
33702: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33703:
33704: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33705: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33706:
33707: IF xla_accounting_cache_pkg.GetValueChar
33708: (p_source_code => 'LEDGER_CATEGORY_CODE'
33701: ---------------------------------------------------------------------------------------------------------------
33702: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33703:
33704: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33705: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33706:
33707: IF xla_accounting_cache_pkg.GetValueChar
33708: (p_source_code => 'LEDGER_CATEGORY_CODE'
33709: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
33712: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
33713: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
33714: )
33715: THEN
33716: xla_ae_lines_pkg.BflowUpgEntry
33717: (p_business_method_code => l_bflow_method_code
33718: ,p_business_class_code => l_bflow_class_code
33719: ,p_balance_type => l_balance_type_code);
33720: ELSE
33752: , x_value_type_code => l_adr_value_type_code
33753: , p_side => 'NA'
33754: );
33755:
33756: xla_ae_lines_pkg.set_ccid(
33757: p_code_combination_id => l_ccid
33758: , p_value_type_code => l_adr_value_type_code
33759: , p_transaction_coa_id => l_adr_transaction_coa_id
33760: , p_accounting_coa_id => l_adr_accounting_coa_id
33788: xla_accounting_err_pkg.build_message
33789: (p_appli_s_name => 'XLA'
33790: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
33791: ,p_token_1 => 'LINE_NUMBER'
33792: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
33793: ,p_token_2 => 'LINE_TYPE_NAME'
33794: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
33795: l_component_type
33796: ,l_component_code
33824: --
33825: --
33826: ------------------------------------------------------------------------------------------------
33827: -- 4219869 Business Flow
33828: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
33829: -- Prior Entry. Currently, the following code is always generated.
33830: ------------------------------------------------------------------------------------------------
33831: XLA_AE_LINES_PKG.ValidateCurrentLine;
33832:
33827: -- 4219869 Business Flow
33828: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
33829: -- Prior Entry. Currently, the following code is always generated.
33830: ------------------------------------------------------------------------------------------------
33831: XLA_AE_LINES_PKG.ValidateCurrentLine;
33832:
33833: ------------------------------------------------------------------------------------
33834: -- 4219869 Business Flow
33835: -- Populated credit and debit amounts -- Need to generate this within IF
33833: ------------------------------------------------------------------------------------
33834: -- 4219869 Business Flow
33835: -- Populated credit and debit amounts -- Need to generate this within IF
33836: ------------------------------------------------------------------------------------
33837: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33838:
33839: ----------------------------------------------------------------------------------
33840: -- 4219869 Business Flow
33841: -- Update journal entry status -- Need to generate this within IF
33865: -- To allow MPA report to determine if it should generate report process
33866: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
33867: ------------------------------------------------------------------------------------------
33868:
33869: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
33870: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
33871: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
33872: -- call ADRs
33873: -- Bug 4922099
33866: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
33867: ------------------------------------------------------------------------------------------
33868:
33869: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
33870: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
33871: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
33872: -- call ADRs
33873: -- Bug 4922099
33874: --
33890: , x_value_type_code => l_adr_value_type_code
33891: , p_side => 'NA'
33892: );
33893:
33894: xla_ae_lines_pkg.set_ccid(
33895: p_code_combination_id => l_ccid
33896: , p_value_type_code => l_adr_value_type_code
33897: , p_transaction_coa_id => l_adr_transaction_coa_id
33898: , p_accounting_coa_id => l_adr_accounting_coa_id
33913:
33914: --
33915: -- Update the line information that should be overwritten
33916: --
33917: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33918: p_header_num => 1);
33919: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33920:
33921: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33915: -- Update the line information that should be overwritten
33916: --
33917: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33918: p_header_num => 1);
33919: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33920:
33921: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33922:
33923: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33917: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33918: p_header_num => 1);
33919: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33920:
33921: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33922:
33923: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33924: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
33925: END IF;
33920:
33921: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33922:
33923: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33924: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
33925: END IF;
33926:
33927: --
33928: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
33927: --
33928: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
33929: --
33930: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
33931: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
33932: ELSE
33933: ---------------------------------------------------------------------------------------------------
33934: -- 4262811a Switch Sign
33935: ---------------------------------------------------------------------------------------------------
33932: ELSE
33933: ---------------------------------------------------------------------------------------------------
33934: -- 4262811a Switch Sign
33935: ---------------------------------------------------------------------------------------------------
33936: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33937: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33938: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33939: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33940: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33933: ---------------------------------------------------------------------------------------------------
33934: -- 4262811a Switch Sign
33935: ---------------------------------------------------------------------------------------------------
33936: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33937: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33938: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33939: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33940: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33941: -- 5132302
33934: -- 4262811a Switch Sign
33935: ---------------------------------------------------------------------------------------------------
33936: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33937: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33938: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33939: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33940: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33941: -- 5132302
33942: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33935: ---------------------------------------------------------------------------------------------------
33936: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33937: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33938: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33939: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33940: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33941: -- 5132302
33942: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33943: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33936: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33937: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33938: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33939: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33940: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33941: -- 5132302
33942: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33943: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33944:
33938: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33939: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33940: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33941: -- 5132302
33942: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33943: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33944:
33945: END IF;
33946:
33939: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33940: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33941: -- 5132302
33942: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33943: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33944:
33945: END IF;
33946:
33947: -- 4955764
33944:
33945: END IF;
33946:
33947: -- 4955764
33948: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33949: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33950:
33951:
33952: XLA_AE_LINES_PKG.ValidateCurrentLine;
33948: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33949: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33950:
33951:
33952: XLA_AE_LINES_PKG.ValidateCurrentLine;
33953: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33954:
33955: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
33956: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
33949: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33950:
33951:
33952: XLA_AE_LINES_PKG.ValidateCurrentLine;
33953: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33954:
33955: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
33956: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
33957: ,p_balance_type_code => l_balance_type_code);
34088: --
34089: -- bulk performance
34090: --
34091: l_balance_type_code VARCHAR2(1);
34092: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
34093: l_log_module VARCHAR2(240);
34094:
34095: --
34096: -- Upgrade strategy
34156: ') = 'REV'
34157: THEN
34158:
34159: --
34160: XLA_AE_LINES_PKG.SetNewLine;
34161:
34162: p_balance_type_code := l_balance_type_code;
34163: -- set the flag so later we will know whether the gain loss line needs to be created
34164:
34168:
34169: --
34170: -- bulk performance
34171: --
34172: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
34173: p_header_num => 0); -- 4262811
34174: --
34175: -- set accounting line options
34176: --
34173: p_header_num => 0); -- 4262811
34174: --
34175: -- set accounting line options
34176: --
34177: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
34178: p_natural_side_code => 'C'
34179: , p_gain_or_loss_flag => 'N'
34180: , p_gl_transfer_mode_code => 'S'
34181: , p_acct_entry_type_code => 'A'
34187: --
34188: --
34189: -- set accounting line type info
34190: --
34191: xla_ae_lines_pkg.SetAcctLineType
34192: (p_component_type => l_component_type
34193: ,p_event_type_code => l_event_type_code
34194: ,p_line_definition_owner_code => l_line_definition_owner_code
34195: ,p_line_definition_code => l_line_definition_code
34201: ,p_event_class_code => l_event_class_code);
34202: --
34203: -- set accounting class
34204: --
34205: xla_ae_lines_pkg.SetAcctClass(
34206: p_accounting_class_code => 'REVENUE'
34207: , p_ae_header_id => l_ae_header_id
34208: );
34209:
34209:
34210: --
34211: -- set rounding class
34212: --
34213: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
34214: 'RECEIVABLE';
34215:
34216: --
34217: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
34213: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
34214: 'RECEIVABLE';
34215:
34216: --
34217: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
34218: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
34219: --
34220: -- bulk performance
34221: --
34214: 'RECEIVABLE';
34215:
34216: --
34217: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
34218: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
34219: --
34220: -- bulk performance
34221: --
34222: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
34218: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
34219: --
34220: -- bulk performance
34221: --
34222: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
34223:
34224: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
34225: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
34226:
34220: -- bulk performance
34221: --
34222: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
34223:
34224: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
34225: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
34226:
34227: -- 4955764
34228: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34224: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
34225: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
34226:
34227: -- 4955764
34228: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34229: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
34230:
34231: -- 4458381 Public Sector Enh
34232:
34258: l_rec_acct_attrs.array_num_value(10) := p_source_38;
34259: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
34260: l_rec_acct_attrs.array_char_value(11) := p_source_39;
34261:
34262: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34263: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34264:
34265: ---------------------------------------------------------------------------------------------------------------
34266: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34259: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
34260: l_rec_acct_attrs.array_char_value(11) := p_source_39;
34261:
34262: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34263: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34264:
34265: ---------------------------------------------------------------------------------------------------------------
34266: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34267: ---------------------------------------------------------------------------------------------------------------
34262: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34263: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34264:
34265: ---------------------------------------------------------------------------------------------------------------
34266: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34267: ---------------------------------------------------------------------------------------------------------------
34268: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34269:
34270: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34264:
34265: ---------------------------------------------------------------------------------------------------------------
34266: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34267: ---------------------------------------------------------------------------------------------------------------
34268: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34269:
34270: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34271: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34272:
34266: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34267: ---------------------------------------------------------------------------------------------------------------
34268: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34269:
34270: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34271: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34272:
34273: IF xla_accounting_cache_pkg.GetValueChar
34274: (p_source_code => 'LEDGER_CATEGORY_CODE'
34267: ---------------------------------------------------------------------------------------------------------------
34268: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34269:
34270: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34271: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34272:
34273: IF xla_accounting_cache_pkg.GetValueChar
34274: (p_source_code => 'LEDGER_CATEGORY_CODE'
34275: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
34278: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
34279: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
34280: )
34281: THEN
34282: xla_ae_lines_pkg.BflowUpgEntry
34283: (p_business_method_code => l_bflow_method_code
34284: ,p_business_class_code => l_bflow_class_code
34285: ,p_balance_type => l_balance_type_code);
34286: ELSE
34318: , x_value_type_code => l_adr_value_type_code
34319: , p_side => 'NA'
34320: );
34321:
34322: xla_ae_lines_pkg.set_ccid(
34323: p_code_combination_id => l_ccid
34324: , p_value_type_code => l_adr_value_type_code
34325: , p_transaction_coa_id => l_adr_transaction_coa_id
34326: , p_accounting_coa_id => l_adr_accounting_coa_id
34354: xla_accounting_err_pkg.build_message
34355: (p_appli_s_name => 'XLA'
34356: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
34357: ,p_token_1 => 'LINE_NUMBER'
34358: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
34359: ,p_token_2 => 'LINE_TYPE_NAME'
34360: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
34361: l_component_type
34362: ,l_component_code
34390: --
34391: --
34392: ------------------------------------------------------------------------------------------------
34393: -- 4219869 Business Flow
34394: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
34395: -- Prior Entry. Currently, the following code is always generated.
34396: ------------------------------------------------------------------------------------------------
34397: XLA_AE_LINES_PKG.ValidateCurrentLine;
34398:
34393: -- 4219869 Business Flow
34394: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
34395: -- Prior Entry. Currently, the following code is always generated.
34396: ------------------------------------------------------------------------------------------------
34397: XLA_AE_LINES_PKG.ValidateCurrentLine;
34398:
34399: ------------------------------------------------------------------------------------
34400: -- 4219869 Business Flow
34401: -- Populated credit and debit amounts -- Need to generate this within IF
34399: ------------------------------------------------------------------------------------
34400: -- 4219869 Business Flow
34401: -- Populated credit and debit amounts -- Need to generate this within IF
34402: ------------------------------------------------------------------------------------
34403: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
34404:
34405: ----------------------------------------------------------------------------------
34406: -- 4219869 Business Flow
34407: -- Update journal entry status -- Need to generate this within IF
34431: -- To allow MPA report to determine if it should generate report process
34432: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
34433: ------------------------------------------------------------------------------------------
34434:
34435: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
34436: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
34437: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
34438: -- call ADRs
34439: -- Bug 4922099
34432: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
34433: ------------------------------------------------------------------------------------------
34434:
34435: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
34436: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
34437: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
34438: -- call ADRs
34439: -- Bug 4922099
34440: --
34456: , x_value_type_code => l_adr_value_type_code
34457: , p_side => 'NA'
34458: );
34459:
34460: xla_ae_lines_pkg.set_ccid(
34461: p_code_combination_id => l_ccid
34462: , p_value_type_code => l_adr_value_type_code
34463: , p_transaction_coa_id => l_adr_transaction_coa_id
34464: , p_accounting_coa_id => l_adr_accounting_coa_id
34479:
34480: --
34481: -- Update the line information that should be overwritten
34482: --
34483: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
34484: p_header_num => 1);
34485: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
34486:
34487: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34481: -- Update the line information that should be overwritten
34482: --
34483: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
34484: p_header_num => 1);
34485: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
34486:
34487: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34488:
34489: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
34483: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
34484: p_header_num => 1);
34485: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
34486:
34487: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34488:
34489: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
34490: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
34491: END IF;
34486:
34487: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34488:
34489: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
34490: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
34491: END IF;
34492:
34493: --
34494: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
34493: --
34494: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
34495: --
34496: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
34497: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
34498: ELSE
34499: ---------------------------------------------------------------------------------------------------
34500: -- 4262811a Switch Sign
34501: ---------------------------------------------------------------------------------------------------
34498: ELSE
34499: ---------------------------------------------------------------------------------------------------
34500: -- 4262811a Switch Sign
34501: ---------------------------------------------------------------------------------------------------
34502: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34503: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34499: ---------------------------------------------------------------------------------------------------
34500: -- 4262811a Switch Sign
34501: ---------------------------------------------------------------------------------------------------
34502: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34503: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34507: -- 5132302
34500: -- 4262811a Switch Sign
34501: ---------------------------------------------------------------------------------------------------
34502: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34503: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34507: -- 5132302
34508: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34501: ---------------------------------------------------------------------------------------------------
34502: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34503: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34507: -- 5132302
34508: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34509: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34502: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34503: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34507: -- 5132302
34508: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34509: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34510:
34504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34507: -- 5132302
34508: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34509: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34510:
34511: END IF;
34512:
34505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34507: -- 5132302
34508: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34509: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34510:
34511: END IF;
34512:
34513: -- 4955764
34510:
34511: END IF;
34512:
34513: -- 4955764
34514: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34515: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
34516:
34517:
34518: XLA_AE_LINES_PKG.ValidateCurrentLine;
34514: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34515: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
34516:
34517:
34518: XLA_AE_LINES_PKG.ValidateCurrentLine;
34519: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
34520:
34521: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
34522: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
34515: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
34516:
34517:
34518: XLA_AE_LINES_PKG.ValidateCurrentLine;
34519: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
34520:
34521: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
34522: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
34523: ,p_balance_type_code => l_balance_type_code);
34656: --
34657: -- bulk performance
34658: --
34659: l_balance_type_code VARCHAR2(1);
34660: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
34661: l_log_module VARCHAR2(240);
34662:
34663: --
34664: -- Upgrade strategy
34724: ') = 'CHARGES'
34725: THEN
34726:
34727: --
34728: XLA_AE_LINES_PKG.SetNewLine;
34729:
34730: p_balance_type_code := l_balance_type_code;
34731: -- set the flag so later we will know whether the gain loss line needs to be created
34732:
34736:
34737: --
34738: -- bulk performance
34739: --
34740: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
34741: p_header_num => 0); -- 4262811
34742: --
34743: -- set accounting line options
34744: --
34741: p_header_num => 0); -- 4262811
34742: --
34743: -- set accounting line options
34744: --
34745: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
34746: p_natural_side_code => 'C'
34747: , p_gain_or_loss_flag => 'N'
34748: , p_gl_transfer_mode_code => 'S'
34749: , p_acct_entry_type_code => 'A'
34755: --
34756: --
34757: -- set accounting line type info
34758: --
34759: xla_ae_lines_pkg.SetAcctLineType
34760: (p_component_type => l_component_type
34761: ,p_event_type_code => l_event_type_code
34762: ,p_line_definition_owner_code => l_line_definition_owner_code
34763: ,p_line_definition_code => l_line_definition_code
34769: ,p_event_class_code => l_event_class_code);
34770: --
34771: -- set accounting class
34772: --
34773: xla_ae_lines_pkg.SetAcctClass(
34774: p_accounting_class_code => 'CHARGES'
34775: , p_ae_header_id => l_ae_header_id
34776: );
34777:
34777:
34778: --
34779: -- set rounding class
34780: --
34781: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
34782: 'RECEIVABLE';
34783:
34784: --
34785: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
34781: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
34782: 'RECEIVABLE';
34783:
34784: --
34785: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
34786: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
34787: --
34788: -- bulk performance
34789: --
34782: 'RECEIVABLE';
34783:
34784: --
34785: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
34786: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
34787: --
34788: -- bulk performance
34789: --
34790: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
34786: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
34787: --
34788: -- bulk performance
34789: --
34790: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
34791:
34792: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
34793: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
34794:
34788: -- bulk performance
34789: --
34790: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
34791:
34792: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
34793: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
34794:
34795: -- 4955764
34796: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34792: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
34793: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
34794:
34795: -- 4955764
34796: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34797: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
34798:
34799: -- 4458381 Public Sector Enh
34800:
34828: l_rec_acct_attrs.array_char_value(11) := p_source_39;
34829: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
34830: l_rec_acct_attrs.array_num_value(12) := p_source_86;
34831:
34832: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34833: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34834:
34835: ---------------------------------------------------------------------------------------------------------------
34836: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34829: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
34830: l_rec_acct_attrs.array_num_value(12) := p_source_86;
34831:
34832: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34833: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34834:
34835: ---------------------------------------------------------------------------------------------------------------
34836: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34837: ---------------------------------------------------------------------------------------------------------------
34832: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34833: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34834:
34835: ---------------------------------------------------------------------------------------------------------------
34836: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34837: ---------------------------------------------------------------------------------------------------------------
34838: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34839:
34840: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34834:
34835: ---------------------------------------------------------------------------------------------------------------
34836: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34837: ---------------------------------------------------------------------------------------------------------------
34838: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34839:
34840: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34841: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34842:
34836: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34837: ---------------------------------------------------------------------------------------------------------------
34838: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34839:
34840: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34841: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34842:
34843: IF xla_accounting_cache_pkg.GetValueChar
34844: (p_source_code => 'LEDGER_CATEGORY_CODE'
34837: ---------------------------------------------------------------------------------------------------------------
34838: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34839:
34840: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34841: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34842:
34843: IF xla_accounting_cache_pkg.GetValueChar
34844: (p_source_code => 'LEDGER_CATEGORY_CODE'
34845: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
34848: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
34849: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
34850: )
34851: THEN
34852: xla_ae_lines_pkg.BflowUpgEntry
34853: (p_business_method_code => l_bflow_method_code
34854: ,p_business_class_code => l_bflow_class_code
34855: ,p_balance_type => l_balance_type_code);
34856: ELSE
34888: , x_value_type_code => l_adr_value_type_code
34889: , p_side => 'NA'
34890: );
34891:
34892: xla_ae_lines_pkg.set_ccid(
34893: p_code_combination_id => l_ccid
34894: , p_value_type_code => l_adr_value_type_code
34895: , p_transaction_coa_id => l_adr_transaction_coa_id
34896: , p_accounting_coa_id => l_adr_accounting_coa_id
34924: xla_accounting_err_pkg.build_message
34925: (p_appli_s_name => 'XLA'
34926: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
34927: ,p_token_1 => 'LINE_NUMBER'
34928: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
34929: ,p_token_2 => 'LINE_TYPE_NAME'
34930: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
34931: l_component_type
34932: ,l_component_code
34960: --
34961: --
34962: ------------------------------------------------------------------------------------------------
34963: -- 4219869 Business Flow
34964: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
34965: -- Prior Entry. Currently, the following code is always generated.
34966: ------------------------------------------------------------------------------------------------
34967: XLA_AE_LINES_PKG.ValidateCurrentLine;
34968:
34963: -- 4219869 Business Flow
34964: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
34965: -- Prior Entry. Currently, the following code is always generated.
34966: ------------------------------------------------------------------------------------------------
34967: XLA_AE_LINES_PKG.ValidateCurrentLine;
34968:
34969: ------------------------------------------------------------------------------------
34970: -- 4219869 Business Flow
34971: -- Populated credit and debit amounts -- Need to generate this within IF
34969: ------------------------------------------------------------------------------------
34970: -- 4219869 Business Flow
34971: -- Populated credit and debit amounts -- Need to generate this within IF
34972: ------------------------------------------------------------------------------------
34973: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
34974:
34975: ----------------------------------------------------------------------------------
34976: -- 4219869 Business Flow
34977: -- Update journal entry status -- Need to generate this within IF
35001: -- To allow MPA report to determine if it should generate report process
35002: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
35003: ------------------------------------------------------------------------------------------
35004:
35005: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
35006: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
35007: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
35008: -- call ADRs
35009: -- Bug 4922099
35002: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
35003: ------------------------------------------------------------------------------------------
35004:
35005: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
35006: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
35007: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
35008: -- call ADRs
35009: -- Bug 4922099
35010: --
35026: , x_value_type_code => l_adr_value_type_code
35027: , p_side => 'NA'
35028: );
35029:
35030: xla_ae_lines_pkg.set_ccid(
35031: p_code_combination_id => l_ccid
35032: , p_value_type_code => l_adr_value_type_code
35033: , p_transaction_coa_id => l_adr_transaction_coa_id
35034: , p_accounting_coa_id => l_adr_accounting_coa_id
35049:
35050: --
35051: -- Update the line information that should be overwritten
35052: --
35053: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
35054: p_header_num => 1);
35055: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
35056:
35057: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35051: -- Update the line information that should be overwritten
35052: --
35053: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
35054: p_header_num => 1);
35055: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
35056:
35057: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35058:
35059: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
35053: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
35054: p_header_num => 1);
35055: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
35056:
35057: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35058:
35059: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
35060: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
35061: END IF;
35056:
35057: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35058:
35059: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
35060: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
35061: END IF;
35062:
35063: --
35064: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
35063: --
35064: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
35065: --
35066: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
35067: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
35068: ELSE
35069: ---------------------------------------------------------------------------------------------------
35070: -- 4262811a Switch Sign
35071: ---------------------------------------------------------------------------------------------------
35068: ELSE
35069: ---------------------------------------------------------------------------------------------------
35070: -- 4262811a Switch Sign
35071: ---------------------------------------------------------------------------------------------------
35072: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35073: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35074: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35075: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35076: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35069: ---------------------------------------------------------------------------------------------------
35070: -- 4262811a Switch Sign
35071: ---------------------------------------------------------------------------------------------------
35072: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35073: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35074: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35075: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35076: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35077: -- 5132302
35070: -- 4262811a Switch Sign
35071: ---------------------------------------------------------------------------------------------------
35072: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35073: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35074: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35075: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35076: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35077: -- 5132302
35078: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35071: ---------------------------------------------------------------------------------------------------
35072: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35073: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35074: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35075: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35076: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35077: -- 5132302
35078: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35079: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35072: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35073: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35074: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35075: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35076: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35077: -- 5132302
35078: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35079: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35080:
35074: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35075: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35076: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35077: -- 5132302
35078: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35079: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35080:
35081: END IF;
35082:
35075: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35076: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35077: -- 5132302
35078: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35079: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35080:
35081: END IF;
35082:
35083: -- 4955764
35080:
35081: END IF;
35082:
35083: -- 4955764
35084: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35085: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
35086:
35087:
35088: XLA_AE_LINES_PKG.ValidateCurrentLine;
35084: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35085: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
35086:
35087:
35088: XLA_AE_LINES_PKG.ValidateCurrentLine;
35089: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
35090:
35091: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
35092: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
35085: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
35086:
35087:
35088: XLA_AE_LINES_PKG.ValidateCurrentLine;
35089: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
35090:
35091: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
35092: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
35093: ,p_balance_type_code => l_balance_type_code);
35226: --
35227: -- bulk performance
35228: --
35229: l_balance_type_code VARCHAR2(1);
35230: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
35231: l_log_module VARCHAR2(240);
35232:
35233: --
35234: -- Upgrade strategy
35294: ') = 'REC'
35295: THEN
35296:
35297: --
35298: XLA_AE_LINES_PKG.SetNewLine;
35299:
35300: p_balance_type_code := l_balance_type_code;
35301: -- set the flag so later we will know whether the gain loss line needs to be created
35302:
35306:
35307: --
35308: -- bulk performance
35309: --
35310: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
35311: p_header_num => 0); -- 4262811
35312: --
35313: -- set accounting line options
35314: --
35311: p_header_num => 0); -- 4262811
35312: --
35313: -- set accounting line options
35314: --
35315: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
35316: p_natural_side_code => 'D'
35317: , p_gain_or_loss_flag => 'N'
35318: , p_gl_transfer_mode_code => 'S'
35319: , p_acct_entry_type_code => 'A'
35325: --
35326: --
35327: -- set accounting line type info
35328: --
35329: xla_ae_lines_pkg.SetAcctLineType
35330: (p_component_type => l_component_type
35331: ,p_event_type_code => l_event_type_code
35332: ,p_line_definition_owner_code => l_line_definition_owner_code
35333: ,p_line_definition_code => l_line_definition_code
35339: ,p_event_class_code => l_event_class_code);
35340: --
35341: -- set accounting class
35342: --
35343: xla_ae_lines_pkg.SetAcctClass(
35344: p_accounting_class_code => 'RECEIVABLE'
35345: , p_ae_header_id => l_ae_header_id
35346: );
35347:
35347:
35348: --
35349: -- set rounding class
35350: --
35351: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
35352: 'RECEIVABLE';
35353:
35354: --
35355: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35351: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
35352: 'RECEIVABLE';
35353:
35354: --
35355: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35356: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35357: --
35358: -- bulk performance
35359: --
35352: 'RECEIVABLE';
35353:
35354: --
35355: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35356: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35357: --
35358: -- bulk performance
35359: --
35360: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35356: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35357: --
35358: -- bulk performance
35359: --
35360: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35361:
35362: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35363: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35364:
35358: -- bulk performance
35359: --
35360: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35361:
35362: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35363: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35364:
35365: -- 4955764
35366: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35362: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35363: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35364:
35365: -- 4955764
35366: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35367: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
35368:
35369: -- 4458381 Public Sector Enh
35370:
35398: l_rec_acct_attrs.array_char_value(11) := p_source_39;
35399: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
35400: l_rec_acct_attrs.array_num_value(12) := p_source_86;
35401:
35402: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35403: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35404:
35405: ---------------------------------------------------------------------------------------------------------------
35406: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35399: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
35400: l_rec_acct_attrs.array_num_value(12) := p_source_86;
35401:
35402: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35403: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35404:
35405: ---------------------------------------------------------------------------------------------------------------
35406: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35407: ---------------------------------------------------------------------------------------------------------------
35402: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35403: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35404:
35405: ---------------------------------------------------------------------------------------------------------------
35406: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35407: ---------------------------------------------------------------------------------------------------------------
35408: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35409:
35410: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35404:
35405: ---------------------------------------------------------------------------------------------------------------
35406: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35407: ---------------------------------------------------------------------------------------------------------------
35408: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35409:
35410: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35411: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35412:
35406: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35407: ---------------------------------------------------------------------------------------------------------------
35408: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35409:
35410: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35411: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35412:
35413: IF xla_accounting_cache_pkg.GetValueChar
35414: (p_source_code => 'LEDGER_CATEGORY_CODE'
35407: ---------------------------------------------------------------------------------------------------------------
35408: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35409:
35410: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35411: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35412:
35413: IF xla_accounting_cache_pkg.GetValueChar
35414: (p_source_code => 'LEDGER_CATEGORY_CODE'
35415: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
35418: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
35419: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
35420: )
35421: THEN
35422: xla_ae_lines_pkg.BflowUpgEntry
35423: (p_business_method_code => l_bflow_method_code
35424: ,p_business_class_code => l_bflow_class_code
35425: ,p_balance_type => l_balance_type_code);
35426: ELSE
35458: , x_value_type_code => l_adr_value_type_code
35459: , p_side => 'NA'
35460: );
35461:
35462: xla_ae_lines_pkg.set_ccid(
35463: p_code_combination_id => l_ccid
35464: , p_value_type_code => l_adr_value_type_code
35465: , p_transaction_coa_id => l_adr_transaction_coa_id
35466: , p_accounting_coa_id => l_adr_accounting_coa_id
35494: xla_accounting_err_pkg.build_message
35495: (p_appli_s_name => 'XLA'
35496: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
35497: ,p_token_1 => 'LINE_NUMBER'
35498: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
35499: ,p_token_2 => 'LINE_TYPE_NAME'
35500: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
35501: l_component_type
35502: ,l_component_code
35530: --
35531: --
35532: ------------------------------------------------------------------------------------------------
35533: -- 4219869 Business Flow
35534: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
35535: -- Prior Entry. Currently, the following code is always generated.
35536: ------------------------------------------------------------------------------------------------
35537: XLA_AE_LINES_PKG.ValidateCurrentLine;
35538:
35533: -- 4219869 Business Flow
35534: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
35535: -- Prior Entry. Currently, the following code is always generated.
35536: ------------------------------------------------------------------------------------------------
35537: XLA_AE_LINES_PKG.ValidateCurrentLine;
35538:
35539: ------------------------------------------------------------------------------------
35540: -- 4219869 Business Flow
35541: -- Populated credit and debit amounts -- Need to generate this within IF
35539: ------------------------------------------------------------------------------------
35540: -- 4219869 Business Flow
35541: -- Populated credit and debit amounts -- Need to generate this within IF
35542: ------------------------------------------------------------------------------------
35543: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
35544:
35545: ----------------------------------------------------------------------------------
35546: -- 4219869 Business Flow
35547: -- Update journal entry status -- Need to generate this within IF
35571: -- To allow MPA report to determine if it should generate report process
35572: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
35573: ------------------------------------------------------------------------------------------
35574:
35575: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
35576: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
35577: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
35578: -- call ADRs
35579: -- Bug 4922099
35572: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
35573: ------------------------------------------------------------------------------------------
35574:
35575: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
35576: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
35577: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
35578: -- call ADRs
35579: -- Bug 4922099
35580: --
35596: , x_value_type_code => l_adr_value_type_code
35597: , p_side => 'NA'
35598: );
35599:
35600: xla_ae_lines_pkg.set_ccid(
35601: p_code_combination_id => l_ccid
35602: , p_value_type_code => l_adr_value_type_code
35603: , p_transaction_coa_id => l_adr_transaction_coa_id
35604: , p_accounting_coa_id => l_adr_accounting_coa_id
35619:
35620: --
35621: -- Update the line information that should be overwritten
35622: --
35623: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
35624: p_header_num => 1);
35625: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
35626:
35627: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35621: -- Update the line information that should be overwritten
35622: --
35623: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
35624: p_header_num => 1);
35625: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
35626:
35627: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35628:
35629: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
35623: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
35624: p_header_num => 1);
35625: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
35626:
35627: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35628:
35629: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
35630: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
35631: END IF;
35626:
35627: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35628:
35629: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
35630: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
35631: END IF;
35632:
35633: --
35634: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
35633: --
35634: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
35635: --
35636: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
35637: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
35638: ELSE
35639: ---------------------------------------------------------------------------------------------------
35640: -- 4262811a Switch Sign
35641: ---------------------------------------------------------------------------------------------------
35638: ELSE
35639: ---------------------------------------------------------------------------------------------------
35640: -- 4262811a Switch Sign
35641: ---------------------------------------------------------------------------------------------------
35642: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35643: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35644: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35639: ---------------------------------------------------------------------------------------------------
35640: -- 4262811a Switch Sign
35641: ---------------------------------------------------------------------------------------------------
35642: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35643: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35644: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35647: -- 5132302
35640: -- 4262811a Switch Sign
35641: ---------------------------------------------------------------------------------------------------
35642: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35643: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35644: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35647: -- 5132302
35648: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35641: ---------------------------------------------------------------------------------------------------
35642: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35643: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35644: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35647: -- 5132302
35648: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35649: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35642: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35643: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35644: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35647: -- 5132302
35648: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35649: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35650:
35644: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35647: -- 5132302
35648: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35649: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35650:
35651: END IF;
35652:
35645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35647: -- 5132302
35648: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35649: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35650:
35651: END IF;
35652:
35653: -- 4955764
35650:
35651: END IF;
35652:
35653: -- 4955764
35654: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35655: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
35656:
35657:
35658: XLA_AE_LINES_PKG.ValidateCurrentLine;
35654: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35655: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
35656:
35657:
35658: XLA_AE_LINES_PKG.ValidateCurrentLine;
35659: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
35660:
35661: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
35662: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
35655: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
35656:
35657:
35658: XLA_AE_LINES_PKG.ValidateCurrentLine;
35659: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
35660:
35661: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
35662: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
35663: ,p_balance_type_code => l_balance_type_code);
35796: --
35797: -- bulk performance
35798: --
35799: l_balance_type_code VARCHAR2(1);
35800: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
35801: l_log_module VARCHAR2(240);
35802:
35803: --
35804: -- Upgrade strategy
35864: ') = 'FREIGHT'
35865: THEN
35866:
35867: --
35868: XLA_AE_LINES_PKG.SetNewLine;
35869:
35870: p_balance_type_code := l_balance_type_code;
35871: -- set the flag so later we will know whether the gain loss line needs to be created
35872:
35876:
35877: --
35878: -- bulk performance
35879: --
35880: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
35881: p_header_num => 0); -- 4262811
35882: --
35883: -- set accounting line options
35884: --
35881: p_header_num => 0); -- 4262811
35882: --
35883: -- set accounting line options
35884: --
35885: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
35886: p_natural_side_code => 'C'
35887: , p_gain_or_loss_flag => 'N'
35888: , p_gl_transfer_mode_code => 'S'
35889: , p_acct_entry_type_code => 'A'
35895: --
35896: --
35897: -- set accounting line type info
35898: --
35899: xla_ae_lines_pkg.SetAcctLineType
35900: (p_component_type => l_component_type
35901: ,p_event_type_code => l_event_type_code
35902: ,p_line_definition_owner_code => l_line_definition_owner_code
35903: ,p_line_definition_code => l_line_definition_code
35909: ,p_event_class_code => l_event_class_code);
35910: --
35911: -- set accounting class
35912: --
35913: xla_ae_lines_pkg.SetAcctClass(
35914: p_accounting_class_code => 'FREIGHT'
35915: , p_ae_header_id => l_ae_header_id
35916: );
35917:
35917:
35918: --
35919: -- set rounding class
35920: --
35921: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
35922: 'RECEIVABLE';
35923:
35924: --
35925: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35921: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
35922: 'RECEIVABLE';
35923:
35924: --
35925: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35926: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35927: --
35928: -- bulk performance
35929: --
35922: 'RECEIVABLE';
35923:
35924: --
35925: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35926: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35927: --
35928: -- bulk performance
35929: --
35930: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35926: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35927: --
35928: -- bulk performance
35929: --
35930: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35931:
35932: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35933: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35934:
35928: -- bulk performance
35929: --
35930: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35931:
35932: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35933: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35934:
35935: -- 4955764
35936: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35932: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35933: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35934:
35935: -- 4955764
35936: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35937: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
35938:
35939: -- 4458381 Public Sector Enh
35940:
35968: l_rec_acct_attrs.array_char_value(11) := p_source_39;
35969: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
35970: l_rec_acct_attrs.array_num_value(12) := p_source_86;
35971:
35972: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35973: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35974:
35975: ---------------------------------------------------------------------------------------------------------------
35976: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35969: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
35970: l_rec_acct_attrs.array_num_value(12) := p_source_86;
35971:
35972: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35973: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35974:
35975: ---------------------------------------------------------------------------------------------------------------
35976: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35977: ---------------------------------------------------------------------------------------------------------------
35972: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35973: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35974:
35975: ---------------------------------------------------------------------------------------------------------------
35976: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35977: ---------------------------------------------------------------------------------------------------------------
35978: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35979:
35980: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35974:
35975: ---------------------------------------------------------------------------------------------------------------
35976: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35977: ---------------------------------------------------------------------------------------------------------------
35978: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35979:
35980: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35981: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35982:
35976: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35977: ---------------------------------------------------------------------------------------------------------------
35978: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35979:
35980: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35981: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35982:
35983: IF xla_accounting_cache_pkg.GetValueChar
35984: (p_source_code => 'LEDGER_CATEGORY_CODE'
35977: ---------------------------------------------------------------------------------------------------------------
35978: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35979:
35980: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35981: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35982:
35983: IF xla_accounting_cache_pkg.GetValueChar
35984: (p_source_code => 'LEDGER_CATEGORY_CODE'
35985: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
35988: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
35989: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
35990: )
35991: THEN
35992: xla_ae_lines_pkg.BflowUpgEntry
35993: (p_business_method_code => l_bflow_method_code
35994: ,p_business_class_code => l_bflow_class_code
35995: ,p_balance_type => l_balance_type_code);
35996: ELSE
36028: , x_value_type_code => l_adr_value_type_code
36029: , p_side => 'NA'
36030: );
36031:
36032: xla_ae_lines_pkg.set_ccid(
36033: p_code_combination_id => l_ccid
36034: , p_value_type_code => l_adr_value_type_code
36035: , p_transaction_coa_id => l_adr_transaction_coa_id
36036: , p_accounting_coa_id => l_adr_accounting_coa_id
36064: xla_accounting_err_pkg.build_message
36065: (p_appli_s_name => 'XLA'
36066: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
36067: ,p_token_1 => 'LINE_NUMBER'
36068: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
36069: ,p_token_2 => 'LINE_TYPE_NAME'
36070: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
36071: l_component_type
36072: ,l_component_code
36100: --
36101: --
36102: ------------------------------------------------------------------------------------------------
36103: -- 4219869 Business Flow
36104: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
36105: -- Prior Entry. Currently, the following code is always generated.
36106: ------------------------------------------------------------------------------------------------
36107: XLA_AE_LINES_PKG.ValidateCurrentLine;
36108:
36103: -- 4219869 Business Flow
36104: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
36105: -- Prior Entry. Currently, the following code is always generated.
36106: ------------------------------------------------------------------------------------------------
36107: XLA_AE_LINES_PKG.ValidateCurrentLine;
36108:
36109: ------------------------------------------------------------------------------------
36110: -- 4219869 Business Flow
36111: -- Populated credit and debit amounts -- Need to generate this within IF
36109: ------------------------------------------------------------------------------------
36110: -- 4219869 Business Flow
36111: -- Populated credit and debit amounts -- Need to generate this within IF
36112: ------------------------------------------------------------------------------------
36113: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
36114:
36115: ----------------------------------------------------------------------------------
36116: -- 4219869 Business Flow
36117: -- Update journal entry status -- Need to generate this within IF
36141: -- To allow MPA report to determine if it should generate report process
36142: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
36143: ------------------------------------------------------------------------------------------
36144:
36145: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
36146: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
36147: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
36148: -- call ADRs
36149: -- Bug 4922099
36142: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
36143: ------------------------------------------------------------------------------------------
36144:
36145: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
36146: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
36147: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
36148: -- call ADRs
36149: -- Bug 4922099
36150: --
36166: , x_value_type_code => l_adr_value_type_code
36167: , p_side => 'NA'
36168: );
36169:
36170: xla_ae_lines_pkg.set_ccid(
36171: p_code_combination_id => l_ccid
36172: , p_value_type_code => l_adr_value_type_code
36173: , p_transaction_coa_id => l_adr_transaction_coa_id
36174: , p_accounting_coa_id => l_adr_accounting_coa_id
36189:
36190: --
36191: -- Update the line information that should be overwritten
36192: --
36193: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36194: p_header_num => 1);
36195: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36196:
36197: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36191: -- Update the line information that should be overwritten
36192: --
36193: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36194: p_header_num => 1);
36195: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36196:
36197: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36198:
36199: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36193: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36194: p_header_num => 1);
36195: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36196:
36197: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36198:
36199: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36200: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
36201: END IF;
36196:
36197: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36198:
36199: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36200: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
36201: END IF;
36202:
36203: --
36204: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
36203: --
36204: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
36205: --
36206: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
36207: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
36208: ELSE
36209: ---------------------------------------------------------------------------------------------------
36210: -- 4262811a Switch Sign
36211: ---------------------------------------------------------------------------------------------------
36208: ELSE
36209: ---------------------------------------------------------------------------------------------------
36210: -- 4262811a Switch Sign
36211: ---------------------------------------------------------------------------------------------------
36212: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36213: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36214: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36215: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36216: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36209: ---------------------------------------------------------------------------------------------------
36210: -- 4262811a Switch Sign
36211: ---------------------------------------------------------------------------------------------------
36212: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36213: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36214: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36215: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36216: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36217: -- 5132302
36210: -- 4262811a Switch Sign
36211: ---------------------------------------------------------------------------------------------------
36212: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36213: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36214: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36215: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36216: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36217: -- 5132302
36218: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36211: ---------------------------------------------------------------------------------------------------
36212: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36213: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36214: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36215: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36216: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36217: -- 5132302
36218: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36219: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36212: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36213: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36214: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36215: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36216: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36217: -- 5132302
36218: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36219: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36220:
36214: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36215: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36216: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36217: -- 5132302
36218: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36219: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36220:
36221: END IF;
36222:
36215: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36216: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36217: -- 5132302
36218: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36219: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36220:
36221: END IF;
36222:
36223: -- 4955764
36220:
36221: END IF;
36222:
36223: -- 4955764
36224: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36225: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36226:
36227:
36228: XLA_AE_LINES_PKG.ValidateCurrentLine;
36224: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36225: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36226:
36227:
36228: XLA_AE_LINES_PKG.ValidateCurrentLine;
36229: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
36230:
36231: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
36232: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
36225: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36226:
36227:
36228: XLA_AE_LINES_PKG.ValidateCurrentLine;
36229: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
36230:
36231: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
36232: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
36233: ,p_balance_type_code => l_balance_type_code);
36370: --
36371: -- bulk performance
36372: --
36373: l_balance_type_code VARCHAR2(1);
36374: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
36375: l_log_module VARCHAR2(240);
36376:
36377: --
36378: -- Upgrade strategy
36439: p_source_87 IS NULL
36440: THEN
36441:
36442: --
36443: XLA_AE_LINES_PKG.SetNewLine;
36444:
36445: p_balance_type_code := l_balance_type_code;
36446: -- set the flag so later we will know whether the gain loss line needs to be created
36447:
36451:
36452: --
36453: -- bulk performance
36454: --
36455: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
36456: p_header_num => 0); -- 4262811
36457: --
36458: -- set accounting line options
36459: --
36456: p_header_num => 0); -- 4262811
36457: --
36458: -- set accounting line options
36459: --
36460: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
36461: p_natural_side_code => 'C'
36462: , p_gain_or_loss_flag => 'N'
36463: , p_gl_transfer_mode_code => 'S'
36464: , p_acct_entry_type_code => 'A'
36470: --
36471: --
36472: -- set accounting line type info
36473: --
36474: xla_ae_lines_pkg.SetAcctLineType
36475: (p_component_type => l_component_type
36476: ,p_event_type_code => l_event_type_code
36477: ,p_line_definition_owner_code => l_line_definition_owner_code
36478: ,p_line_definition_code => l_line_definition_code
36484: ,p_event_class_code => l_event_class_code);
36485: --
36486: -- set accounting class
36487: --
36488: xla_ae_lines_pkg.SetAcctClass(
36489: p_accounting_class_code => 'REVENUE'
36490: , p_ae_header_id => l_ae_header_id
36491: );
36492:
36492:
36493: --
36494: -- set rounding class
36495: --
36496: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
36497: 'RECEIVABLE';
36498:
36499: --
36500: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
36496: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
36497: 'RECEIVABLE';
36498:
36499: --
36500: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
36501: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
36502: --
36503: -- bulk performance
36504: --
36497: 'RECEIVABLE';
36498:
36499: --
36500: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
36501: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
36502: --
36503: -- bulk performance
36504: --
36505: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
36501: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
36502: --
36503: -- bulk performance
36504: --
36505: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
36506:
36507: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
36508: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
36509:
36503: -- bulk performance
36504: --
36505: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
36506:
36507: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
36508: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
36509:
36510: -- 4955764
36511: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36507: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
36508: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
36509:
36510: -- 4955764
36511: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36512: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
36513:
36514: -- 4458381 Public Sector Enh
36515:
36543: l_rec_acct_attrs.array_char_value(11) := p_source_39;
36544: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
36545: l_rec_acct_attrs.array_num_value(12) := p_source_86;
36546:
36547: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
36548: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
36549:
36550: ---------------------------------------------------------------------------------------------------------------
36551: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36544: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
36545: l_rec_acct_attrs.array_num_value(12) := p_source_86;
36546:
36547: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
36548: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
36549:
36550: ---------------------------------------------------------------------------------------------------------------
36551: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36552: ---------------------------------------------------------------------------------------------------------------
36547: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
36548: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
36549:
36550: ---------------------------------------------------------------------------------------------------------------
36551: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36552: ---------------------------------------------------------------------------------------------------------------
36553: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
36554:
36555: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36549:
36550: ---------------------------------------------------------------------------------------------------------------
36551: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36552: ---------------------------------------------------------------------------------------------------------------
36553: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
36554:
36555: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36556: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36557:
36551: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36552: ---------------------------------------------------------------------------------------------------------------
36553: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
36554:
36555: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36556: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36557:
36558: IF xla_accounting_cache_pkg.GetValueChar
36559: (p_source_code => 'LEDGER_CATEGORY_CODE'
36552: ---------------------------------------------------------------------------------------------------------------
36553: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
36554:
36555: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36556: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36557:
36558: IF xla_accounting_cache_pkg.GetValueChar
36559: (p_source_code => 'LEDGER_CATEGORY_CODE'
36560: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
36563: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
36564: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
36565: )
36566: THEN
36567: xla_ae_lines_pkg.BflowUpgEntry
36568: (p_business_method_code => l_bflow_method_code
36569: ,p_business_class_code => l_bflow_class_code
36570: ,p_balance_type => l_balance_type_code);
36571: ELSE
36577: -- call analytical criteria
36578: --
36579:
36580:
36581: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
36582: xla_ae_lines_pkg.SetAnalyticalCriteria(
36583: p_analytical_criterion_name => 'Project Number'
36584: , p_analytical_criterion_owner => 'S'
36585: , p_analytical_criterion_code => 'PROJECT_NUMBER'
36578: --
36579:
36580:
36581: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
36582: xla_ae_lines_pkg.SetAnalyticalCriteria(
36583: p_analytical_criterion_name => 'Project Number'
36584: , p_analytical_criterion_owner => 'S'
36585: , p_analytical_criterion_code => 'PROJECT_NUMBER'
36586: , p_amb_context_code => 'DEFAULT'
36621: , x_value_type_code => l_adr_value_type_code
36622: , p_side => 'NA'
36623: );
36624:
36625: xla_ae_lines_pkg.set_ccid(
36626: p_code_combination_id => l_ccid
36627: , p_value_type_code => l_adr_value_type_code
36628: , p_transaction_coa_id => l_adr_transaction_coa_id
36629: , p_accounting_coa_id => l_adr_accounting_coa_id
36657: xla_accounting_err_pkg.build_message
36658: (p_appli_s_name => 'XLA'
36659: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
36660: ,p_token_1 => 'LINE_NUMBER'
36661: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
36662: ,p_token_2 => 'LINE_TYPE_NAME'
36663: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
36664: l_component_type
36665: ,l_component_code
36693: --
36694: --
36695: ------------------------------------------------------------------------------------------------
36696: -- 4219869 Business Flow
36697: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
36698: -- Prior Entry. Currently, the following code is always generated.
36699: ------------------------------------------------------------------------------------------------
36700: XLA_AE_LINES_PKG.ValidateCurrentLine;
36701:
36696: -- 4219869 Business Flow
36697: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
36698: -- Prior Entry. Currently, the following code is always generated.
36699: ------------------------------------------------------------------------------------------------
36700: XLA_AE_LINES_PKG.ValidateCurrentLine;
36701:
36702: ------------------------------------------------------------------------------------
36703: -- 4219869 Business Flow
36704: -- Populated credit and debit amounts -- Need to generate this within IF
36702: ------------------------------------------------------------------------------------
36703: -- 4219869 Business Flow
36704: -- Populated credit and debit amounts -- Need to generate this within IF
36705: ------------------------------------------------------------------------------------
36706: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
36707:
36708: ----------------------------------------------------------------------------------
36709: -- 4219869 Business Flow
36710: -- Update journal entry status -- Need to generate this within IF
36734: -- To allow MPA report to determine if it should generate report process
36735: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
36736: ------------------------------------------------------------------------------------------
36737:
36738: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
36739: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
36740: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
36741: -- call ADRs
36742: -- Bug 4922099
36735: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
36736: ------------------------------------------------------------------------------------------
36737:
36738: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
36739: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
36740: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
36741: -- call ADRs
36742: -- Bug 4922099
36743: --
36759: , x_value_type_code => l_adr_value_type_code
36760: , p_side => 'NA'
36761: );
36762:
36763: xla_ae_lines_pkg.set_ccid(
36764: p_code_combination_id => l_ccid
36765: , p_value_type_code => l_adr_value_type_code
36766: , p_transaction_coa_id => l_adr_transaction_coa_id
36767: , p_accounting_coa_id => l_adr_accounting_coa_id
36782:
36783: --
36784: -- Update the line information that should be overwritten
36785: --
36786: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36787: p_header_num => 1);
36788: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36789:
36790: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36784: -- Update the line information that should be overwritten
36785: --
36786: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36787: p_header_num => 1);
36788: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36789:
36790: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36791:
36792: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36786: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36787: p_header_num => 1);
36788: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36789:
36790: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36791:
36792: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36793: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
36794: END IF;
36789:
36790: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36791:
36792: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36793: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
36794: END IF;
36795:
36796: --
36797: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
36796: --
36797: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
36798: --
36799: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
36800: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
36801: ELSE
36802: ---------------------------------------------------------------------------------------------------
36803: -- 4262811a Switch Sign
36804: ---------------------------------------------------------------------------------------------------
36801: ELSE
36802: ---------------------------------------------------------------------------------------------------
36803: -- 4262811a Switch Sign
36804: ---------------------------------------------------------------------------------------------------
36805: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36806: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36807: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36808: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36809: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36802: ---------------------------------------------------------------------------------------------------
36803: -- 4262811a Switch Sign
36804: ---------------------------------------------------------------------------------------------------
36805: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36806: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36807: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36808: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36809: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36810: -- 5132302
36803: -- 4262811a Switch Sign
36804: ---------------------------------------------------------------------------------------------------
36805: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36806: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36807: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36808: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36809: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36810: -- 5132302
36811: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36804: ---------------------------------------------------------------------------------------------------
36805: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36806: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36807: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36808: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36809: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36810: -- 5132302
36811: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36812: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36805: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36806: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36807: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36808: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36809: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36810: -- 5132302
36811: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36812: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36813:
36807: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36808: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36809: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36810: -- 5132302
36811: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36812: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36813:
36814: END IF;
36815:
36808: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36809: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36810: -- 5132302
36811: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36812: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36813:
36814: END IF;
36815:
36816: -- 4955764
36813:
36814: END IF;
36815:
36816: -- 4955764
36817: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36818: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36819:
36820:
36821: XLA_AE_LINES_PKG.ValidateCurrentLine;
36817: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36818: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36819:
36820:
36821: XLA_AE_LINES_PKG.ValidateCurrentLine;
36822: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
36823:
36824: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
36825: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
36818: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36819:
36820:
36821: XLA_AE_LINES_PKG.ValidateCurrentLine;
36822: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
36823:
36824: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
36825: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
36826: ,p_balance_type_code => l_balance_type_code);
36961: --
36962: -- bulk performance
36963: --
36964: l_balance_type_code VARCHAR2(1);
36965: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
36966: l_log_module VARCHAR2(240);
36967:
36968: --
36969: -- Upgrade strategy
37031: ') = 'Y'
37032: THEN
37033:
37034: --
37035: XLA_AE_LINES_PKG.SetNewLine;
37036:
37037: p_balance_type_code := l_balance_type_code;
37038: -- set the flag so later we will know whether the gain loss line needs to be created
37039:
37043:
37044: --
37045: -- bulk performance
37046: --
37047: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
37048: p_header_num => 0); -- 4262811
37049: --
37050: -- set accounting line options
37051: --
37048: p_header_num => 0); -- 4262811
37049: --
37050: -- set accounting line options
37051: --
37052: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
37053: p_natural_side_code => 'C'
37054: , p_gain_or_loss_flag => 'N'
37055: , p_gl_transfer_mode_code => 'S'
37056: , p_acct_entry_type_code => 'A'
37062: --
37063: --
37064: -- set accounting line type info
37065: --
37066: xla_ae_lines_pkg.SetAcctLineType
37067: (p_component_type => l_component_type
37068: ,p_event_type_code => l_event_type_code
37069: ,p_line_definition_owner_code => l_line_definition_owner_code
37070: ,p_line_definition_code => l_line_definition_code
37076: ,p_event_class_code => l_event_class_code);
37077: --
37078: -- set accounting class
37079: --
37080: xla_ae_lines_pkg.SetAcctClass(
37081: p_accounting_class_code => 'REVENUE'
37082: , p_ae_header_id => l_ae_header_id
37083: );
37084:
37084:
37085: --
37086: -- set rounding class
37087: --
37088: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
37089: 'RECEIVABLE';
37090:
37091: --
37092: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
37088: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
37089: 'RECEIVABLE';
37090:
37091: --
37092: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
37093: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
37094: --
37095: -- bulk performance
37096: --
37089: 'RECEIVABLE';
37090:
37091: --
37092: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
37093: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
37094: --
37095: -- bulk performance
37096: --
37097: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
37093: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
37094: --
37095: -- bulk performance
37096: --
37097: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
37098:
37099: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
37100: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
37101:
37095: -- bulk performance
37096: --
37097: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
37098:
37099: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
37100: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
37101:
37102: -- 4955764
37103: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37099: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
37100: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
37101:
37102: -- 4955764
37103: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37104: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
37105:
37106: -- 4458381 Public Sector Enh
37107:
37135: l_rec_acct_attrs.array_char_value(11) := p_source_39;
37136: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
37137: l_rec_acct_attrs.array_num_value(12) := p_source_86;
37138:
37139: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37140: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37141:
37142: ---------------------------------------------------------------------------------------------------------------
37143: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37136: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
37137: l_rec_acct_attrs.array_num_value(12) := p_source_86;
37138:
37139: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37140: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37141:
37142: ---------------------------------------------------------------------------------------------------------------
37143: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37144: ---------------------------------------------------------------------------------------------------------------
37139: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37140: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37141:
37142: ---------------------------------------------------------------------------------------------------------------
37143: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37144: ---------------------------------------------------------------------------------------------------------------
37145: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37146:
37147: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37141:
37142: ---------------------------------------------------------------------------------------------------------------
37143: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37144: ---------------------------------------------------------------------------------------------------------------
37145: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37146:
37147: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37148: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37149:
37143: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37144: ---------------------------------------------------------------------------------------------------------------
37145: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37146:
37147: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37148: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37149:
37150: IF xla_accounting_cache_pkg.GetValueChar
37151: (p_source_code => 'LEDGER_CATEGORY_CODE'
37144: ---------------------------------------------------------------------------------------------------------------
37145: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37146:
37147: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37148: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37149:
37150: IF xla_accounting_cache_pkg.GetValueChar
37151: (p_source_code => 'LEDGER_CATEGORY_CODE'
37152: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
37155: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
37156: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
37157: )
37158: THEN
37159: xla_ae_lines_pkg.BflowUpgEntry
37160: (p_business_method_code => l_bflow_method_code
37161: ,p_business_class_code => l_bflow_class_code
37162: ,p_balance_type => l_balance_type_code);
37163: ELSE
37195: , x_value_type_code => l_adr_value_type_code
37196: , p_side => 'NA'
37197: );
37198:
37199: xla_ae_lines_pkg.set_ccid(
37200: p_code_combination_id => l_ccid
37201: , p_value_type_code => l_adr_value_type_code
37202: , p_transaction_coa_id => l_adr_transaction_coa_id
37203: , p_accounting_coa_id => l_adr_accounting_coa_id
37231: xla_accounting_err_pkg.build_message
37232: (p_appli_s_name => 'XLA'
37233: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
37234: ,p_token_1 => 'LINE_NUMBER'
37235: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
37236: ,p_token_2 => 'LINE_TYPE_NAME'
37237: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
37238: l_component_type
37239: ,l_component_code
37267: --
37268: --
37269: ------------------------------------------------------------------------------------------------
37270: -- 4219869 Business Flow
37271: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
37272: -- Prior Entry. Currently, the following code is always generated.
37273: ------------------------------------------------------------------------------------------------
37274: XLA_AE_LINES_PKG.ValidateCurrentLine;
37275:
37270: -- 4219869 Business Flow
37271: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
37272: -- Prior Entry. Currently, the following code is always generated.
37273: ------------------------------------------------------------------------------------------------
37274: XLA_AE_LINES_PKG.ValidateCurrentLine;
37275:
37276: ------------------------------------------------------------------------------------
37277: -- 4219869 Business Flow
37278: -- Populated credit and debit amounts -- Need to generate this within IF
37276: ------------------------------------------------------------------------------------
37277: -- 4219869 Business Flow
37278: -- Populated credit and debit amounts -- Need to generate this within IF
37279: ------------------------------------------------------------------------------------
37280: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37281:
37282: ----------------------------------------------------------------------------------
37283: -- 4219869 Business Flow
37284: -- Update journal entry status -- Need to generate this within IF
37308: -- To allow MPA report to determine if it should generate report process
37309: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
37310: ------------------------------------------------------------------------------------------
37311:
37312: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
37313: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
37314: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
37315: -- call ADRs
37316: -- Bug 4922099
37309: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
37310: ------------------------------------------------------------------------------------------
37311:
37312: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
37313: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
37314: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
37315: -- call ADRs
37316: -- Bug 4922099
37317: --
37333: , x_value_type_code => l_adr_value_type_code
37334: , p_side => 'NA'
37335: );
37336:
37337: xla_ae_lines_pkg.set_ccid(
37338: p_code_combination_id => l_ccid
37339: , p_value_type_code => l_adr_value_type_code
37340: , p_transaction_coa_id => l_adr_transaction_coa_id
37341: , p_accounting_coa_id => l_adr_accounting_coa_id
37356:
37357: --
37358: -- Update the line information that should be overwritten
37359: --
37360: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37361: p_header_num => 1);
37362: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37363:
37364: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37358: -- Update the line information that should be overwritten
37359: --
37360: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37361: p_header_num => 1);
37362: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37363:
37364: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37365:
37366: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37360: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37361: p_header_num => 1);
37362: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37363:
37364: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37365:
37366: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37367: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
37368: END IF;
37363:
37364: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37365:
37366: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37367: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
37368: END IF;
37369:
37370: --
37371: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
37370: --
37371: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
37372: --
37373: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
37374: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
37375: ELSE
37376: ---------------------------------------------------------------------------------------------------
37377: -- 4262811a Switch Sign
37378: ---------------------------------------------------------------------------------------------------
37375: ELSE
37376: ---------------------------------------------------------------------------------------------------
37377: -- 4262811a Switch Sign
37378: ---------------------------------------------------------------------------------------------------
37379: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37380: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37381: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37382: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37383: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37376: ---------------------------------------------------------------------------------------------------
37377: -- 4262811a Switch Sign
37378: ---------------------------------------------------------------------------------------------------
37379: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37380: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37381: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37382: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37383: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37384: -- 5132302
37377: -- 4262811a Switch Sign
37378: ---------------------------------------------------------------------------------------------------
37379: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37380: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37381: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37382: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37383: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37384: -- 5132302
37385: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37378: ---------------------------------------------------------------------------------------------------
37379: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37380: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37381: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37382: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37383: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37384: -- 5132302
37385: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37386: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37379: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37380: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37381: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37382: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37383: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37384: -- 5132302
37385: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37386: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37387:
37381: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37382: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37383: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37384: -- 5132302
37385: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37386: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37387:
37388: END IF;
37389:
37382: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37383: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37384: -- 5132302
37385: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37386: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37387:
37388: END IF;
37389:
37390: -- 4955764
37387:
37388: END IF;
37389:
37390: -- 4955764
37391: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37392: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37393:
37394:
37395: XLA_AE_LINES_PKG.ValidateCurrentLine;
37391: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37392: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37393:
37394:
37395: XLA_AE_LINES_PKG.ValidateCurrentLine;
37396: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37397:
37398: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
37399: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
37392: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37393:
37394:
37395: XLA_AE_LINES_PKG.ValidateCurrentLine;
37396: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37397:
37398: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
37399: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
37400: ,p_balance_type_code => l_balance_type_code);
37533: --
37534: -- bulk performance
37535: --
37536: l_balance_type_code VARCHAR2(1);
37537: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
37538: l_log_module VARCHAR2(240);
37539:
37540: --
37541: -- Upgrade strategy
37601: ') = 'ROUND'
37602: THEN
37603:
37604: --
37605: XLA_AE_LINES_PKG.SetNewLine;
37606:
37607: p_balance_type_code := l_balance_type_code;
37608: -- set the flag so later we will know whether the gain loss line needs to be created
37609:
37613:
37614: --
37615: -- bulk performance
37616: --
37617: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
37618: p_header_num => 0); -- 4262811
37619: --
37620: -- set accounting line options
37621: --
37618: p_header_num => 0); -- 4262811
37619: --
37620: -- set accounting line options
37621: --
37622: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
37623: p_natural_side_code => 'C'
37624: , p_gain_or_loss_flag => 'N'
37625: , p_gl_transfer_mode_code => 'S'
37626: , p_acct_entry_type_code => 'A'
37632: --
37633: --
37634: -- set accounting line type info
37635: --
37636: xla_ae_lines_pkg.SetAcctLineType
37637: (p_component_type => l_component_type
37638: ,p_event_type_code => l_event_type_code
37639: ,p_line_definition_owner_code => l_line_definition_owner_code
37640: ,p_line_definition_code => l_line_definition_code
37646: ,p_event_class_code => l_event_class_code);
37647: --
37648: -- set accounting class
37649: --
37650: xla_ae_lines_pkg.SetAcctClass(
37651: p_accounting_class_code => 'ROUNDING'
37652: , p_ae_header_id => l_ae_header_id
37653: );
37654:
37654:
37655: --
37656: -- set rounding class
37657: --
37658: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
37659: 'RECEIVABLE';
37660:
37661: --
37662: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
37658: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
37659: 'RECEIVABLE';
37660:
37661: --
37662: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
37663: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
37664: --
37665: -- bulk performance
37666: --
37659: 'RECEIVABLE';
37660:
37661: --
37662: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
37663: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
37664: --
37665: -- bulk performance
37666: --
37667: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
37663: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
37664: --
37665: -- bulk performance
37666: --
37667: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
37668:
37669: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
37670: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
37671:
37665: -- bulk performance
37666: --
37667: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
37668:
37669: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
37670: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
37671:
37672: -- 4955764
37673: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37669: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
37670: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
37671:
37672: -- 4955764
37673: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37674: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
37675:
37676: -- 4458381 Public Sector Enh
37677:
37705: l_rec_acct_attrs.array_char_value(11) := p_source_39;
37706: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
37707: l_rec_acct_attrs.array_num_value(12) := p_source_86;
37708:
37709: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37710: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37711:
37712: ---------------------------------------------------------------------------------------------------------------
37713: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37706: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
37707: l_rec_acct_attrs.array_num_value(12) := p_source_86;
37708:
37709: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37710: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37711:
37712: ---------------------------------------------------------------------------------------------------------------
37713: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37714: ---------------------------------------------------------------------------------------------------------------
37709: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37710: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37711:
37712: ---------------------------------------------------------------------------------------------------------------
37713: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37714: ---------------------------------------------------------------------------------------------------------------
37715: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37716:
37717: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37711:
37712: ---------------------------------------------------------------------------------------------------------------
37713: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37714: ---------------------------------------------------------------------------------------------------------------
37715: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37716:
37717: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37718: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37719:
37713: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37714: ---------------------------------------------------------------------------------------------------------------
37715: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37716:
37717: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37718: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37719:
37720: IF xla_accounting_cache_pkg.GetValueChar
37721: (p_source_code => 'LEDGER_CATEGORY_CODE'
37714: ---------------------------------------------------------------------------------------------------------------
37715: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37716:
37717: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37718: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37719:
37720: IF xla_accounting_cache_pkg.GetValueChar
37721: (p_source_code => 'LEDGER_CATEGORY_CODE'
37722: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
37725: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
37726: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
37727: )
37728: THEN
37729: xla_ae_lines_pkg.BflowUpgEntry
37730: (p_business_method_code => l_bflow_method_code
37731: ,p_business_class_code => l_bflow_class_code
37732: ,p_balance_type => l_balance_type_code);
37733: ELSE
37765: , x_value_type_code => l_adr_value_type_code
37766: , p_side => 'NA'
37767: );
37768:
37769: xla_ae_lines_pkg.set_ccid(
37770: p_code_combination_id => l_ccid
37771: , p_value_type_code => l_adr_value_type_code
37772: , p_transaction_coa_id => l_adr_transaction_coa_id
37773: , p_accounting_coa_id => l_adr_accounting_coa_id
37801: xla_accounting_err_pkg.build_message
37802: (p_appli_s_name => 'XLA'
37803: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
37804: ,p_token_1 => 'LINE_NUMBER'
37805: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
37806: ,p_token_2 => 'LINE_TYPE_NAME'
37807: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
37808: l_component_type
37809: ,l_component_code
37837: --
37838: --
37839: ------------------------------------------------------------------------------------------------
37840: -- 4219869 Business Flow
37841: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
37842: -- Prior Entry. Currently, the following code is always generated.
37843: ------------------------------------------------------------------------------------------------
37844: XLA_AE_LINES_PKG.ValidateCurrentLine;
37845:
37840: -- 4219869 Business Flow
37841: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
37842: -- Prior Entry. Currently, the following code is always generated.
37843: ------------------------------------------------------------------------------------------------
37844: XLA_AE_LINES_PKG.ValidateCurrentLine;
37845:
37846: ------------------------------------------------------------------------------------
37847: -- 4219869 Business Flow
37848: -- Populated credit and debit amounts -- Need to generate this within IF
37846: ------------------------------------------------------------------------------------
37847: -- 4219869 Business Flow
37848: -- Populated credit and debit amounts -- Need to generate this within IF
37849: ------------------------------------------------------------------------------------
37850: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37851:
37852: ----------------------------------------------------------------------------------
37853: -- 4219869 Business Flow
37854: -- Update journal entry status -- Need to generate this within IF
37878: -- To allow MPA report to determine if it should generate report process
37879: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
37880: ------------------------------------------------------------------------------------------
37881:
37882: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
37883: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
37884: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
37885: -- call ADRs
37886: -- Bug 4922099
37879: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
37880: ------------------------------------------------------------------------------------------
37881:
37882: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
37883: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
37884: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
37885: -- call ADRs
37886: -- Bug 4922099
37887: --
37903: , x_value_type_code => l_adr_value_type_code
37904: , p_side => 'NA'
37905: );
37906:
37907: xla_ae_lines_pkg.set_ccid(
37908: p_code_combination_id => l_ccid
37909: , p_value_type_code => l_adr_value_type_code
37910: , p_transaction_coa_id => l_adr_transaction_coa_id
37911: , p_accounting_coa_id => l_adr_accounting_coa_id
37926:
37927: --
37928: -- Update the line information that should be overwritten
37929: --
37930: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37931: p_header_num => 1);
37932: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37933:
37934: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37928: -- Update the line information that should be overwritten
37929: --
37930: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37931: p_header_num => 1);
37932: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37933:
37934: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37935:
37936: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37930: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37931: p_header_num => 1);
37932: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37933:
37934: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37935:
37936: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37937: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
37938: END IF;
37933:
37934: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37935:
37936: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37937: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
37938: END IF;
37939:
37940: --
37941: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
37940: --
37941: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
37942: --
37943: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
37944: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
37945: ELSE
37946: ---------------------------------------------------------------------------------------------------
37947: -- 4262811a Switch Sign
37948: ---------------------------------------------------------------------------------------------------
37945: ELSE
37946: ---------------------------------------------------------------------------------------------------
37947: -- 4262811a Switch Sign
37948: ---------------------------------------------------------------------------------------------------
37949: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37950: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37951: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37952: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37953: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37946: ---------------------------------------------------------------------------------------------------
37947: -- 4262811a Switch Sign
37948: ---------------------------------------------------------------------------------------------------
37949: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37950: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37951: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37952: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37953: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37954: -- 5132302
37947: -- 4262811a Switch Sign
37948: ---------------------------------------------------------------------------------------------------
37949: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37950: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37951: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37952: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37953: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37954: -- 5132302
37955: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37948: ---------------------------------------------------------------------------------------------------
37949: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37950: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37951: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37952: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37953: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37954: -- 5132302
37955: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37956: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37949: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37950: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37951: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37952: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37953: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37954: -- 5132302
37955: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37956: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37957:
37951: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37952: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37953: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37954: -- 5132302
37955: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37956: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37957:
37958: END IF;
37959:
37952: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37953: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37954: -- 5132302
37955: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37956: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37957:
37958: END IF;
37959:
37960: -- 4955764
37957:
37958: END IF;
37959:
37960: -- 4955764
37961: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37962: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37963:
37964:
37965: XLA_AE_LINES_PKG.ValidateCurrentLine;
37961: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37962: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37963:
37964:
37965: XLA_AE_LINES_PKG.ValidateCurrentLine;
37966: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37967:
37968: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
37969: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
37962: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37963:
37964:
37965: XLA_AE_LINES_PKG.ValidateCurrentLine;
37966: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37967:
37968: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
37969: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
37970: ,p_balance_type_code => l_balance_type_code);
38103: --
38104: -- bulk performance
38105: --
38106: l_balance_type_code VARCHAR2(1);
38107: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
38108: l_log_module VARCHAR2(240);
38109:
38110: --
38111: -- Upgrade strategy
38171: ') = 'TAX'
38172: THEN
38173:
38174: --
38175: XLA_AE_LINES_PKG.SetNewLine;
38176:
38177: p_balance_type_code := l_balance_type_code;
38178: -- set the flag so later we will know whether the gain loss line needs to be created
38179:
38183:
38184: --
38185: -- bulk performance
38186: --
38187: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
38188: p_header_num => 0); -- 4262811
38189: --
38190: -- set accounting line options
38191: --
38188: p_header_num => 0); -- 4262811
38189: --
38190: -- set accounting line options
38191: --
38192: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
38193: p_natural_side_code => 'C'
38194: , p_gain_or_loss_flag => 'N'
38195: , p_gl_transfer_mode_code => 'S'
38196: , p_acct_entry_type_code => 'A'
38202: --
38203: --
38204: -- set accounting line type info
38205: --
38206: xla_ae_lines_pkg.SetAcctLineType
38207: (p_component_type => l_component_type
38208: ,p_event_type_code => l_event_type_code
38209: ,p_line_definition_owner_code => l_line_definition_owner_code
38210: ,p_line_definition_code => l_line_definition_code
38216: ,p_event_class_code => l_event_class_code);
38217: --
38218: -- set accounting class
38219: --
38220: xla_ae_lines_pkg.SetAcctClass(
38221: p_accounting_class_code => 'TAX'
38222: , p_ae_header_id => l_ae_header_id
38223: );
38224:
38224:
38225: --
38226: -- set rounding class
38227: --
38228: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
38229: 'RECEIVABLE';
38230:
38231: --
38232: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38228: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
38229: 'RECEIVABLE';
38230:
38231: --
38232: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38233: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38234: --
38235: -- bulk performance
38236: --
38229: 'RECEIVABLE';
38230:
38231: --
38232: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38233: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38234: --
38235: -- bulk performance
38236: --
38237: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38233: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38234: --
38235: -- bulk performance
38236: --
38237: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38238:
38239: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38240: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38241:
38235: -- bulk performance
38236: --
38237: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38238:
38239: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38240: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38241:
38242: -- 4955764
38243: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38239: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38240: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38241:
38242: -- 4955764
38243: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38244: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
38245:
38246: -- 4458381 Public Sector Enh
38247:
38275: l_rec_acct_attrs.array_char_value(11) := p_source_39;
38276: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
38277: l_rec_acct_attrs.array_num_value(12) := p_source_86;
38278:
38279: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38280: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38281:
38282: ---------------------------------------------------------------------------------------------------------------
38283: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38276: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
38277: l_rec_acct_attrs.array_num_value(12) := p_source_86;
38278:
38279: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38280: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38281:
38282: ---------------------------------------------------------------------------------------------------------------
38283: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38284: ---------------------------------------------------------------------------------------------------------------
38279: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38280: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38281:
38282: ---------------------------------------------------------------------------------------------------------------
38283: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38284: ---------------------------------------------------------------------------------------------------------------
38285: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38286:
38287: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38281:
38282: ---------------------------------------------------------------------------------------------------------------
38283: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38284: ---------------------------------------------------------------------------------------------------------------
38285: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38286:
38287: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38288: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38289:
38283: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38284: ---------------------------------------------------------------------------------------------------------------
38285: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38286:
38287: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38288: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38289:
38290: IF xla_accounting_cache_pkg.GetValueChar
38291: (p_source_code => 'LEDGER_CATEGORY_CODE'
38284: ---------------------------------------------------------------------------------------------------------------
38285: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38286:
38287: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38288: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38289:
38290: IF xla_accounting_cache_pkg.GetValueChar
38291: (p_source_code => 'LEDGER_CATEGORY_CODE'
38292: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
38295: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
38296: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
38297: )
38298: THEN
38299: xla_ae_lines_pkg.BflowUpgEntry
38300: (p_business_method_code => l_bflow_method_code
38301: ,p_business_class_code => l_bflow_class_code
38302: ,p_balance_type => l_balance_type_code);
38303: ELSE
38335: , x_value_type_code => l_adr_value_type_code
38336: , p_side => 'NA'
38337: );
38338:
38339: xla_ae_lines_pkg.set_ccid(
38340: p_code_combination_id => l_ccid
38341: , p_value_type_code => l_adr_value_type_code
38342: , p_transaction_coa_id => l_adr_transaction_coa_id
38343: , p_accounting_coa_id => l_adr_accounting_coa_id
38371: xla_accounting_err_pkg.build_message
38372: (p_appli_s_name => 'XLA'
38373: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
38374: ,p_token_1 => 'LINE_NUMBER'
38375: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
38376: ,p_token_2 => 'LINE_TYPE_NAME'
38377: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
38378: l_component_type
38379: ,l_component_code
38407: --
38408: --
38409: ------------------------------------------------------------------------------------------------
38410: -- 4219869 Business Flow
38411: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
38412: -- Prior Entry. Currently, the following code is always generated.
38413: ------------------------------------------------------------------------------------------------
38414: XLA_AE_LINES_PKG.ValidateCurrentLine;
38415:
38410: -- 4219869 Business Flow
38411: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
38412: -- Prior Entry. Currently, the following code is always generated.
38413: ------------------------------------------------------------------------------------------------
38414: XLA_AE_LINES_PKG.ValidateCurrentLine;
38415:
38416: ------------------------------------------------------------------------------------
38417: -- 4219869 Business Flow
38418: -- Populated credit and debit amounts -- Need to generate this within IF
38416: ------------------------------------------------------------------------------------
38417: -- 4219869 Business Flow
38418: -- Populated credit and debit amounts -- Need to generate this within IF
38419: ------------------------------------------------------------------------------------
38420: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
38421:
38422: ----------------------------------------------------------------------------------
38423: -- 4219869 Business Flow
38424: -- Update journal entry status -- Need to generate this within IF
38448: -- To allow MPA report to determine if it should generate report process
38449: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
38450: ------------------------------------------------------------------------------------------
38451:
38452: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
38453: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
38454: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
38455: -- call ADRs
38456: -- Bug 4922099
38449: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
38450: ------------------------------------------------------------------------------------------
38451:
38452: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
38453: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
38454: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
38455: -- call ADRs
38456: -- Bug 4922099
38457: --
38473: , x_value_type_code => l_adr_value_type_code
38474: , p_side => 'NA'
38475: );
38476:
38477: xla_ae_lines_pkg.set_ccid(
38478: p_code_combination_id => l_ccid
38479: , p_value_type_code => l_adr_value_type_code
38480: , p_transaction_coa_id => l_adr_transaction_coa_id
38481: , p_accounting_coa_id => l_adr_accounting_coa_id
38496:
38497: --
38498: -- Update the line information that should be overwritten
38499: --
38500: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
38501: p_header_num => 1);
38502: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
38503:
38504: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38498: -- Update the line information that should be overwritten
38499: --
38500: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
38501: p_header_num => 1);
38502: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
38503:
38504: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38505:
38506: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
38500: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
38501: p_header_num => 1);
38502: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
38503:
38504: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38505:
38506: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
38507: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
38508: END IF;
38503:
38504: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38505:
38506: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
38507: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
38508: END IF;
38509:
38510: --
38511: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
38510: --
38511: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
38512: --
38513: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
38514: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
38515: ELSE
38516: ---------------------------------------------------------------------------------------------------
38517: -- 4262811a Switch Sign
38518: ---------------------------------------------------------------------------------------------------
38515: ELSE
38516: ---------------------------------------------------------------------------------------------------
38517: -- 4262811a Switch Sign
38518: ---------------------------------------------------------------------------------------------------
38519: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38520: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38521: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38522: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38523: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38516: ---------------------------------------------------------------------------------------------------
38517: -- 4262811a Switch Sign
38518: ---------------------------------------------------------------------------------------------------
38519: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38520: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38521: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38522: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38523: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38524: -- 5132302
38517: -- 4262811a Switch Sign
38518: ---------------------------------------------------------------------------------------------------
38519: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38520: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38521: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38522: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38523: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38524: -- 5132302
38525: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38518: ---------------------------------------------------------------------------------------------------
38519: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38520: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38521: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38522: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38523: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38524: -- 5132302
38525: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38526: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38519: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38520: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38521: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38522: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38523: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38524: -- 5132302
38525: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38526: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38527:
38521: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38522: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38523: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38524: -- 5132302
38525: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38526: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38527:
38528: END IF;
38529:
38522: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38523: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38524: -- 5132302
38525: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38526: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38527:
38528: END IF;
38529:
38530: -- 4955764
38527:
38528: END IF;
38529:
38530: -- 4955764
38531: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38532: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
38533:
38534:
38535: XLA_AE_LINES_PKG.ValidateCurrentLine;
38531: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38532: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
38533:
38534:
38535: XLA_AE_LINES_PKG.ValidateCurrentLine;
38536: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
38537:
38538: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
38539: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
38532: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
38533:
38534:
38535: XLA_AE_LINES_PKG.ValidateCurrentLine;
38536: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
38537:
38538: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
38539: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
38540: ,p_balance_type_code => l_balance_type_code);
38675: --
38676: -- bulk performance
38677: --
38678: l_balance_type_code VARCHAR2(1);
38679: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
38680: l_log_module VARCHAR2(240);
38681:
38682: --
38683: -- Upgrade strategy
38744: p_source_87 IS NULL
38745: THEN
38746:
38747: --
38748: XLA_AE_LINES_PKG.SetNewLine;
38749:
38750: p_balance_type_code := l_balance_type_code;
38751: -- set the flag so later we will know whether the gain loss line needs to be created
38752:
38756:
38757: --
38758: -- bulk performance
38759: --
38760: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
38761: p_header_num => 0); -- 4262811
38762: --
38763: -- set accounting line options
38764: --
38761: p_header_num => 0); -- 4262811
38762: --
38763: -- set accounting line options
38764: --
38765: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
38766: p_natural_side_code => 'C'
38767: , p_gain_or_loss_flag => 'N'
38768: , p_gl_transfer_mode_code => 'S'
38769: , p_acct_entry_type_code => 'A'
38775: --
38776: --
38777: -- set accounting line type info
38778: --
38779: xla_ae_lines_pkg.SetAcctLineType
38780: (p_component_type => l_component_type
38781: ,p_event_type_code => l_event_type_code
38782: ,p_line_definition_owner_code => l_line_definition_owner_code
38783: ,p_line_definition_code => l_line_definition_code
38789: ,p_event_class_code => l_event_class_code);
38790: --
38791: -- set accounting class
38792: --
38793: xla_ae_lines_pkg.SetAcctClass(
38794: p_accounting_class_code => 'UNBILL'
38795: , p_ae_header_id => l_ae_header_id
38796: );
38797:
38797:
38798: --
38799: -- set rounding class
38800: --
38801: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
38802: 'UNBILL';
38803:
38804: --
38805: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38801: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
38802: 'UNBILL';
38803:
38804: --
38805: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38806: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38807: --
38808: -- bulk performance
38809: --
38802: 'UNBILL';
38803:
38804: --
38805: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38806: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38807: --
38808: -- bulk performance
38809: --
38810: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38806: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38807: --
38808: -- bulk performance
38809: --
38810: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38811:
38812: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38813: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38814:
38808: -- bulk performance
38809: --
38810: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38811:
38812: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38813: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38814:
38815: -- 4955764
38816: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38812: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38813: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38814:
38815: -- 4955764
38816: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38817: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
38818:
38819: -- 4458381 Public Sector Enh
38820:
38848: l_rec_acct_attrs.array_char_value(11) := p_source_39;
38849: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
38850: l_rec_acct_attrs.array_num_value(12) := p_source_86;
38851:
38852: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38853: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38854:
38855: ---------------------------------------------------------------------------------------------------------------
38856: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38849: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
38850: l_rec_acct_attrs.array_num_value(12) := p_source_86;
38851:
38852: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38853: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38854:
38855: ---------------------------------------------------------------------------------------------------------------
38856: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38857: ---------------------------------------------------------------------------------------------------------------
38852: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38853: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38854:
38855: ---------------------------------------------------------------------------------------------------------------
38856: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38857: ---------------------------------------------------------------------------------------------------------------
38858: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38859:
38860: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38854:
38855: ---------------------------------------------------------------------------------------------------------------
38856: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38857: ---------------------------------------------------------------------------------------------------------------
38858: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38859:
38860: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38861: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38862:
38856: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38857: ---------------------------------------------------------------------------------------------------------------
38858: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38859:
38860: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38861: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38862:
38863: IF xla_accounting_cache_pkg.GetValueChar
38864: (p_source_code => 'LEDGER_CATEGORY_CODE'
38857: ---------------------------------------------------------------------------------------------------------------
38858: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38859:
38860: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38861: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38862:
38863: IF xla_accounting_cache_pkg.GetValueChar
38864: (p_source_code => 'LEDGER_CATEGORY_CODE'
38865: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
38868: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
38869: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
38870: )
38871: THEN
38872: xla_ae_lines_pkg.BflowUpgEntry
38873: (p_business_method_code => l_bflow_method_code
38874: ,p_business_class_code => l_bflow_class_code
38875: ,p_balance_type => l_balance_type_code);
38876: ELSE
38908: , x_value_type_code => l_adr_value_type_code
38909: , p_side => 'NA'
38910: );
38911:
38912: xla_ae_lines_pkg.set_ccid(
38913: p_code_combination_id => l_ccid
38914: , p_value_type_code => l_adr_value_type_code
38915: , p_transaction_coa_id => l_adr_transaction_coa_id
38916: , p_accounting_coa_id => l_adr_accounting_coa_id
38944: xla_accounting_err_pkg.build_message
38945: (p_appli_s_name => 'XLA'
38946: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
38947: ,p_token_1 => 'LINE_NUMBER'
38948: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
38949: ,p_token_2 => 'LINE_TYPE_NAME'
38950: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
38951: l_component_type
38952: ,l_component_code
38980: --
38981: --
38982: ------------------------------------------------------------------------------------------------
38983: -- 4219869 Business Flow
38984: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
38985: -- Prior Entry. Currently, the following code is always generated.
38986: ------------------------------------------------------------------------------------------------
38987: XLA_AE_LINES_PKG.ValidateCurrentLine;
38988:
38983: -- 4219869 Business Flow
38984: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
38985: -- Prior Entry. Currently, the following code is always generated.
38986: ------------------------------------------------------------------------------------------------
38987: XLA_AE_LINES_PKG.ValidateCurrentLine;
38988:
38989: ------------------------------------------------------------------------------------
38990: -- 4219869 Business Flow
38991: -- Populated credit and debit amounts -- Need to generate this within IF
38989: ------------------------------------------------------------------------------------
38990: -- 4219869 Business Flow
38991: -- Populated credit and debit amounts -- Need to generate this within IF
38992: ------------------------------------------------------------------------------------
38993: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
38994:
38995: ----------------------------------------------------------------------------------
38996: -- 4219869 Business Flow
38997: -- Update journal entry status -- Need to generate this within IF
39021: -- To allow MPA report to determine if it should generate report process
39022: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
39023: ------------------------------------------------------------------------------------------
39024:
39025: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
39026: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
39027: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
39028: -- call ADRs
39029: -- Bug 4922099
39022: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
39023: ------------------------------------------------------------------------------------------
39024:
39025: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
39026: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
39027: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
39028: -- call ADRs
39029: -- Bug 4922099
39030: --
39046: , x_value_type_code => l_adr_value_type_code
39047: , p_side => 'NA'
39048: );
39049:
39050: xla_ae_lines_pkg.set_ccid(
39051: p_code_combination_id => l_ccid
39052: , p_value_type_code => l_adr_value_type_code
39053: , p_transaction_coa_id => l_adr_transaction_coa_id
39054: , p_accounting_coa_id => l_adr_accounting_coa_id
39069:
39070: --
39071: -- Update the line information that should be overwritten
39072: --
39073: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
39074: p_header_num => 1);
39075: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
39076:
39077: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39071: -- Update the line information that should be overwritten
39072: --
39073: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
39074: p_header_num => 1);
39075: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
39076:
39077: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39078:
39079: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
39073: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
39074: p_header_num => 1);
39075: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
39076:
39077: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39078:
39079: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
39080: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
39081: END IF;
39076:
39077: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39078:
39079: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
39080: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
39081: END IF;
39082:
39083: --
39084: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
39083: --
39084: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
39085: --
39086: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
39087: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
39088: ELSE
39089: ---------------------------------------------------------------------------------------------------
39090: -- 4262811a Switch Sign
39091: ---------------------------------------------------------------------------------------------------
39088: ELSE
39089: ---------------------------------------------------------------------------------------------------
39090: -- 4262811a Switch Sign
39091: ---------------------------------------------------------------------------------------------------
39092: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39093: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39094: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39095: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39096: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39089: ---------------------------------------------------------------------------------------------------
39090: -- 4262811a Switch Sign
39091: ---------------------------------------------------------------------------------------------------
39092: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39093: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39094: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39095: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39096: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39097: -- 5132302
39090: -- 4262811a Switch Sign
39091: ---------------------------------------------------------------------------------------------------
39092: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39093: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39094: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39095: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39096: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39097: -- 5132302
39098: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39091: ---------------------------------------------------------------------------------------------------
39092: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39093: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39094: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39095: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39096: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39097: -- 5132302
39098: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39099: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39092: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39093: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39094: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39095: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39096: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39097: -- 5132302
39098: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39099: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39100:
39094: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39095: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39096: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39097: -- 5132302
39098: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39099: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39100:
39101: END IF;
39102:
39095: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39096: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39097: -- 5132302
39098: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39099: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39100:
39101: END IF;
39102:
39103: -- 4955764
39100:
39101: END IF;
39102:
39103: -- 4955764
39104: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39105: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39106:
39107:
39108: XLA_AE_LINES_PKG.ValidateCurrentLine;
39104: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39105: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39106:
39107:
39108: XLA_AE_LINES_PKG.ValidateCurrentLine;
39109: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
39110:
39111: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
39112: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
39105: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39106:
39107:
39108: XLA_AE_LINES_PKG.ValidateCurrentLine;
39109: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
39110:
39111: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
39112: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
39113: ,p_balance_type_code => l_balance_type_code);
39248: --
39249: -- bulk performance
39250: --
39251: l_balance_type_code VARCHAR2(1);
39252: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
39253: l_log_module VARCHAR2(240);
39254:
39255: --
39256: -- Upgrade strategy
39318: ') = 'Y'
39319: THEN
39320:
39321: --
39322: XLA_AE_LINES_PKG.SetNewLine;
39323:
39324: p_balance_type_code := l_balance_type_code;
39325: -- set the flag so later we will know whether the gain loss line needs to be created
39326:
39330:
39331: --
39332: -- bulk performance
39333: --
39334: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
39335: p_header_num => 0); -- 4262811
39336: --
39337: -- set accounting line options
39338: --
39335: p_header_num => 0); -- 4262811
39336: --
39337: -- set accounting line options
39338: --
39339: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
39340: p_natural_side_code => 'C'
39341: , p_gain_or_loss_flag => 'N'
39342: , p_gl_transfer_mode_code => 'S'
39343: , p_acct_entry_type_code => 'A'
39349: --
39350: --
39351: -- set accounting line type info
39352: --
39353: xla_ae_lines_pkg.SetAcctLineType
39354: (p_component_type => l_component_type
39355: ,p_event_type_code => l_event_type_code
39356: ,p_line_definition_owner_code => l_line_definition_owner_code
39357: ,p_line_definition_code => l_line_definition_code
39363: ,p_event_class_code => l_event_class_code);
39364: --
39365: -- set accounting class
39366: --
39367: xla_ae_lines_pkg.SetAcctClass(
39368: p_accounting_class_code => 'UNBILL'
39369: , p_ae_header_id => l_ae_header_id
39370: );
39371:
39371:
39372: --
39373: -- set rounding class
39374: --
39375: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
39376: 'UNBILL';
39377:
39378: --
39379: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39375: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
39376: 'UNBILL';
39377:
39378: --
39379: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39380: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39381: --
39382: -- bulk performance
39383: --
39376: 'UNBILL';
39377:
39378: --
39379: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39380: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39381: --
39382: -- bulk performance
39383: --
39384: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39380: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39381: --
39382: -- bulk performance
39383: --
39384: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39385:
39386: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39387: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39388:
39382: -- bulk performance
39383: --
39384: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39385:
39386: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39387: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39388:
39389: -- 4955764
39390: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39386: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39387: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39388:
39389: -- 4955764
39390: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39391: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
39392:
39393: -- 4458381 Public Sector Enh
39394:
39422: l_rec_acct_attrs.array_char_value(11) := p_source_39;
39423: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
39424: l_rec_acct_attrs.array_num_value(12) := p_source_86;
39425:
39426: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39427: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39428:
39429: ---------------------------------------------------------------------------------------------------------------
39430: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39423: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
39424: l_rec_acct_attrs.array_num_value(12) := p_source_86;
39425:
39426: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39427: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39428:
39429: ---------------------------------------------------------------------------------------------------------------
39430: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39431: ---------------------------------------------------------------------------------------------------------------
39426: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39427: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39428:
39429: ---------------------------------------------------------------------------------------------------------------
39430: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39431: ---------------------------------------------------------------------------------------------------------------
39432: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39433:
39434: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39428:
39429: ---------------------------------------------------------------------------------------------------------------
39430: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39431: ---------------------------------------------------------------------------------------------------------------
39432: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39433:
39434: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39435: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39436:
39430: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39431: ---------------------------------------------------------------------------------------------------------------
39432: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39433:
39434: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39435: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39436:
39437: IF xla_accounting_cache_pkg.GetValueChar
39438: (p_source_code => 'LEDGER_CATEGORY_CODE'
39431: ---------------------------------------------------------------------------------------------------------------
39432: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39433:
39434: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39435: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39436:
39437: IF xla_accounting_cache_pkg.GetValueChar
39438: (p_source_code => 'LEDGER_CATEGORY_CODE'
39439: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
39442: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
39443: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
39444: )
39445: THEN
39446: xla_ae_lines_pkg.BflowUpgEntry
39447: (p_business_method_code => l_bflow_method_code
39448: ,p_business_class_code => l_bflow_class_code
39449: ,p_balance_type => l_balance_type_code);
39450: ELSE
39482: , x_value_type_code => l_adr_value_type_code
39483: , p_side => 'NA'
39484: );
39485:
39486: xla_ae_lines_pkg.set_ccid(
39487: p_code_combination_id => l_ccid
39488: , p_value_type_code => l_adr_value_type_code
39489: , p_transaction_coa_id => l_adr_transaction_coa_id
39490: , p_accounting_coa_id => l_adr_accounting_coa_id
39518: xla_accounting_err_pkg.build_message
39519: (p_appli_s_name => 'XLA'
39520: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
39521: ,p_token_1 => 'LINE_NUMBER'
39522: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
39523: ,p_token_2 => 'LINE_TYPE_NAME'
39524: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
39525: l_component_type
39526: ,l_component_code
39554: --
39555: --
39556: ------------------------------------------------------------------------------------------------
39557: -- 4219869 Business Flow
39558: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
39559: -- Prior Entry. Currently, the following code is always generated.
39560: ------------------------------------------------------------------------------------------------
39561: XLA_AE_LINES_PKG.ValidateCurrentLine;
39562:
39557: -- 4219869 Business Flow
39558: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
39559: -- Prior Entry. Currently, the following code is always generated.
39560: ------------------------------------------------------------------------------------------------
39561: XLA_AE_LINES_PKG.ValidateCurrentLine;
39562:
39563: ------------------------------------------------------------------------------------
39564: -- 4219869 Business Flow
39565: -- Populated credit and debit amounts -- Need to generate this within IF
39563: ------------------------------------------------------------------------------------
39564: -- 4219869 Business Flow
39565: -- Populated credit and debit amounts -- Need to generate this within IF
39566: ------------------------------------------------------------------------------------
39567: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
39568:
39569: ----------------------------------------------------------------------------------
39570: -- 4219869 Business Flow
39571: -- Update journal entry status -- Need to generate this within IF
39595: -- To allow MPA report to determine if it should generate report process
39596: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
39597: ------------------------------------------------------------------------------------------
39598:
39599: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
39600: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
39601: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
39602: -- call ADRs
39603: -- Bug 4922099
39596: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
39597: ------------------------------------------------------------------------------------------
39598:
39599: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
39600: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
39601: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
39602: -- call ADRs
39603: -- Bug 4922099
39604: --
39620: , x_value_type_code => l_adr_value_type_code
39621: , p_side => 'NA'
39622: );
39623:
39624: xla_ae_lines_pkg.set_ccid(
39625: p_code_combination_id => l_ccid
39626: , p_value_type_code => l_adr_value_type_code
39627: , p_transaction_coa_id => l_adr_transaction_coa_id
39628: , p_accounting_coa_id => l_adr_accounting_coa_id
39643:
39644: --
39645: -- Update the line information that should be overwritten
39646: --
39647: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
39648: p_header_num => 1);
39649: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
39650:
39651: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39645: -- Update the line information that should be overwritten
39646: --
39647: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
39648: p_header_num => 1);
39649: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
39650:
39651: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39652:
39653: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
39647: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
39648: p_header_num => 1);
39649: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
39650:
39651: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39652:
39653: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
39654: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
39655: END IF;
39650:
39651: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39652:
39653: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
39654: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
39655: END IF;
39656:
39657: --
39658: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
39657: --
39658: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
39659: --
39660: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
39661: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
39662: ELSE
39663: ---------------------------------------------------------------------------------------------------
39664: -- 4262811a Switch Sign
39665: ---------------------------------------------------------------------------------------------------
39662: ELSE
39663: ---------------------------------------------------------------------------------------------------
39664: -- 4262811a Switch Sign
39665: ---------------------------------------------------------------------------------------------------
39666: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39667: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39668: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39669: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39670: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39663: ---------------------------------------------------------------------------------------------------
39664: -- 4262811a Switch Sign
39665: ---------------------------------------------------------------------------------------------------
39666: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39667: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39668: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39669: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39670: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39671: -- 5132302
39664: -- 4262811a Switch Sign
39665: ---------------------------------------------------------------------------------------------------
39666: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39667: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39668: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39669: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39670: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39671: -- 5132302
39672: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39665: ---------------------------------------------------------------------------------------------------
39666: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39667: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39668: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39669: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39670: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39671: -- 5132302
39672: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39673: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39666: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39667: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39668: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39669: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39670: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39671: -- 5132302
39672: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39673: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39674:
39668: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39669: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39670: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39671: -- 5132302
39672: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39673: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39674:
39675: END IF;
39676:
39669: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39670: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39671: -- 5132302
39672: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39673: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39674:
39675: END IF;
39676:
39677: -- 4955764
39674:
39675: END IF;
39676:
39677: -- 4955764
39678: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39679: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39680:
39681:
39682: XLA_AE_LINES_PKG.ValidateCurrentLine;
39678: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39679: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39680:
39681:
39682: XLA_AE_LINES_PKG.ValidateCurrentLine;
39683: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
39684:
39685: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
39686: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
39679: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39680:
39681:
39682: XLA_AE_LINES_PKG.ValidateCurrentLine;
39683: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
39684:
39685: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
39686: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
39687: ,p_balance_type_code => l_balance_type_code);
39822: --
39823: -- bulk performance
39824: --
39825: l_balance_type_code VARCHAR2(1);
39826: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
39827: l_log_module VARCHAR2(240);
39828:
39829: --
39830: -- Upgrade strategy
39891: p_source_87 IS NULL
39892: THEN
39893:
39894: --
39895: XLA_AE_LINES_PKG.SetNewLine;
39896:
39897: p_balance_type_code := l_balance_type_code;
39898: -- set the flag so later we will know whether the gain loss line needs to be created
39899:
39903:
39904: --
39905: -- bulk performance
39906: --
39907: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
39908: p_header_num => 0); -- 4262811
39909: --
39910: -- set accounting line options
39911: --
39908: p_header_num => 0); -- 4262811
39909: --
39910: -- set accounting line options
39911: --
39912: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
39913: p_natural_side_code => 'C'
39914: , p_gain_or_loss_flag => 'N'
39915: , p_gl_transfer_mode_code => 'S'
39916: , p_acct_entry_type_code => 'A'
39922: --
39923: --
39924: -- set accounting line type info
39925: --
39926: xla_ae_lines_pkg.SetAcctLineType
39927: (p_component_type => l_component_type
39928: ,p_event_type_code => l_event_type_code
39929: ,p_line_definition_owner_code => l_line_definition_owner_code
39930: ,p_line_definition_code => l_line_definition_code
39936: ,p_event_class_code => l_event_class_code);
39937: --
39938: -- set accounting class
39939: --
39940: xla_ae_lines_pkg.SetAcctClass(
39941: p_accounting_class_code => 'UNEARNED_REVENUE'
39942: , p_ae_header_id => l_ae_header_id
39943: );
39944:
39944:
39945: --
39946: -- set rounding class
39947: --
39948: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
39949: 'RECEIVABLE';
39950:
39951: --
39952: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39948: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
39949: 'RECEIVABLE';
39950:
39951: --
39952: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39953: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39954: --
39955: -- bulk performance
39956: --
39949: 'RECEIVABLE';
39950:
39951: --
39952: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39953: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39954: --
39955: -- bulk performance
39956: --
39957: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39953: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39954: --
39955: -- bulk performance
39956: --
39957: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39958:
39959: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39960: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39961:
39955: -- bulk performance
39956: --
39957: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39958:
39959: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39960: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39961:
39962: -- 4955764
39963: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39959: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39960: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39961:
39962: -- 4955764
39963: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39964: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
39965:
39966: -- 4458381 Public Sector Enh
39967:
39995: l_rec_acct_attrs.array_char_value(11) := p_source_39;
39996: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
39997: l_rec_acct_attrs.array_num_value(12) := p_source_86;
39998:
39999: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
40000: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
40001:
40002: ---------------------------------------------------------------------------------------------------------------
40003: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39996: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
39997: l_rec_acct_attrs.array_num_value(12) := p_source_86;
39998:
39999: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
40000: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
40001:
40002: ---------------------------------------------------------------------------------------------------------------
40003: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40004: ---------------------------------------------------------------------------------------------------------------
39999: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
40000: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
40001:
40002: ---------------------------------------------------------------------------------------------------------------
40003: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40004: ---------------------------------------------------------------------------------------------------------------
40005: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40006:
40007: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40001:
40002: ---------------------------------------------------------------------------------------------------------------
40003: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40004: ---------------------------------------------------------------------------------------------------------------
40005: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40006:
40007: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40008: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40009:
40003: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40004: ---------------------------------------------------------------------------------------------------------------
40005: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40006:
40007: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40008: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40009:
40010: IF xla_accounting_cache_pkg.GetValueChar
40011: (p_source_code => 'LEDGER_CATEGORY_CODE'
40004: ---------------------------------------------------------------------------------------------------------------
40005: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40006:
40007: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40008: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40009:
40010: IF xla_accounting_cache_pkg.GetValueChar
40011: (p_source_code => 'LEDGER_CATEGORY_CODE'
40012: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
40015: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
40016: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
40017: )
40018: THEN
40019: xla_ae_lines_pkg.BflowUpgEntry
40020: (p_business_method_code => l_bflow_method_code
40021: ,p_business_class_code => l_bflow_class_code
40022: ,p_balance_type => l_balance_type_code);
40023: ELSE
40055: , x_value_type_code => l_adr_value_type_code
40056: , p_side => 'NA'
40057: );
40058:
40059: xla_ae_lines_pkg.set_ccid(
40060: p_code_combination_id => l_ccid
40061: , p_value_type_code => l_adr_value_type_code
40062: , p_transaction_coa_id => l_adr_transaction_coa_id
40063: , p_accounting_coa_id => l_adr_accounting_coa_id
40091: xla_accounting_err_pkg.build_message
40092: (p_appli_s_name => 'XLA'
40093: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
40094: ,p_token_1 => 'LINE_NUMBER'
40095: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
40096: ,p_token_2 => 'LINE_TYPE_NAME'
40097: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
40098: l_component_type
40099: ,l_component_code
40127: --
40128: --
40129: ------------------------------------------------------------------------------------------------
40130: -- 4219869 Business Flow
40131: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
40132: -- Prior Entry. Currently, the following code is always generated.
40133: ------------------------------------------------------------------------------------------------
40134: XLA_AE_LINES_PKG.ValidateCurrentLine;
40135:
40130: -- 4219869 Business Flow
40131: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
40132: -- Prior Entry. Currently, the following code is always generated.
40133: ------------------------------------------------------------------------------------------------
40134: XLA_AE_LINES_PKG.ValidateCurrentLine;
40135:
40136: ------------------------------------------------------------------------------------
40137: -- 4219869 Business Flow
40138: -- Populated credit and debit amounts -- Need to generate this within IF
40136: ------------------------------------------------------------------------------------
40137: -- 4219869 Business Flow
40138: -- Populated credit and debit amounts -- Need to generate this within IF
40139: ------------------------------------------------------------------------------------
40140: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40141:
40142: ----------------------------------------------------------------------------------
40143: -- 4219869 Business Flow
40144: -- Update journal entry status -- Need to generate this within IF
40168: -- To allow MPA report to determine if it should generate report process
40169: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
40170: ------------------------------------------------------------------------------------------
40171:
40172: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
40173: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
40174: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
40175: -- call ADRs
40176: -- Bug 4922099
40169: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
40170: ------------------------------------------------------------------------------------------
40171:
40172: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
40173: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
40174: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
40175: -- call ADRs
40176: -- Bug 4922099
40177: --
40193: , x_value_type_code => l_adr_value_type_code
40194: , p_side => 'NA'
40195: );
40196:
40197: xla_ae_lines_pkg.set_ccid(
40198: p_code_combination_id => l_ccid
40199: , p_value_type_code => l_adr_value_type_code
40200: , p_transaction_coa_id => l_adr_transaction_coa_id
40201: , p_accounting_coa_id => l_adr_accounting_coa_id
40216:
40217: --
40218: -- Update the line information that should be overwritten
40219: --
40220: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40221: p_header_num => 1);
40222: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40223:
40224: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40218: -- Update the line information that should be overwritten
40219: --
40220: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40221: p_header_num => 1);
40222: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40223:
40224: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40225:
40226: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40220: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40221: p_header_num => 1);
40222: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40223:
40224: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40225:
40226: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40227: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
40228: END IF;
40223:
40224: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40225:
40226: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40227: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
40228: END IF;
40229:
40230: --
40231: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
40230: --
40231: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
40232: --
40233: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
40234: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
40235: ELSE
40236: ---------------------------------------------------------------------------------------------------
40237: -- 4262811a Switch Sign
40238: ---------------------------------------------------------------------------------------------------
40235: ELSE
40236: ---------------------------------------------------------------------------------------------------
40237: -- 4262811a Switch Sign
40238: ---------------------------------------------------------------------------------------------------
40239: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40240: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40241: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40242: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40243: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40236: ---------------------------------------------------------------------------------------------------
40237: -- 4262811a Switch Sign
40238: ---------------------------------------------------------------------------------------------------
40239: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40240: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40241: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40242: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40243: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40244: -- 5132302
40237: -- 4262811a Switch Sign
40238: ---------------------------------------------------------------------------------------------------
40239: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40240: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40241: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40242: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40243: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40244: -- 5132302
40245: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40238: ---------------------------------------------------------------------------------------------------
40239: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40240: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40241: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40242: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40243: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40244: -- 5132302
40245: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40246: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40239: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40240: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40241: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40242: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40243: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40244: -- 5132302
40245: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40246: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40247:
40241: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40242: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40243: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40244: -- 5132302
40245: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40246: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40247:
40248: END IF;
40249:
40242: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40243: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40244: -- 5132302
40245: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40246: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40247:
40248: END IF;
40249:
40250: -- 4955764
40247:
40248: END IF;
40249:
40250: -- 4955764
40251: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40252: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40253:
40254:
40255: XLA_AE_LINES_PKG.ValidateCurrentLine;
40251: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40252: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40253:
40254:
40255: XLA_AE_LINES_PKG.ValidateCurrentLine;
40256: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40257:
40258: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
40259: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
40252: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40253:
40254:
40255: XLA_AE_LINES_PKG.ValidateCurrentLine;
40256: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40257:
40258: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
40259: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
40260: ,p_balance_type_code => l_balance_type_code);
40395: --
40396: -- bulk performance
40397: --
40398: l_balance_type_code VARCHAR2(1);
40399: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
40400: l_log_module VARCHAR2(240);
40401:
40402: --
40403: -- Upgrade strategy
40465: ') = 'Y'
40466: THEN
40467:
40468: --
40469: XLA_AE_LINES_PKG.SetNewLine;
40470:
40471: p_balance_type_code := l_balance_type_code;
40472: -- set the flag so later we will know whether the gain loss line needs to be created
40473:
40477:
40478: --
40479: -- bulk performance
40480: --
40481: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
40482: p_header_num => 0); -- 4262811
40483: --
40484: -- set accounting line options
40485: --
40482: p_header_num => 0); -- 4262811
40483: --
40484: -- set accounting line options
40485: --
40486: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
40487: p_natural_side_code => 'C'
40488: , p_gain_or_loss_flag => 'N'
40489: , p_gl_transfer_mode_code => 'S'
40490: , p_acct_entry_type_code => 'A'
40496: --
40497: --
40498: -- set accounting line type info
40499: --
40500: xla_ae_lines_pkg.SetAcctLineType
40501: (p_component_type => l_component_type
40502: ,p_event_type_code => l_event_type_code
40503: ,p_line_definition_owner_code => l_line_definition_owner_code
40504: ,p_line_definition_code => l_line_definition_code
40510: ,p_event_class_code => l_event_class_code);
40511: --
40512: -- set accounting class
40513: --
40514: xla_ae_lines_pkg.SetAcctClass(
40515: p_accounting_class_code => 'UNEARNED_REVENUE'
40516: , p_ae_header_id => l_ae_header_id
40517: );
40518:
40518:
40519: --
40520: -- set rounding class
40521: --
40522: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
40523: 'RECEIVABLE';
40524:
40525: --
40526: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
40522: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
40523: 'RECEIVABLE';
40524:
40525: --
40526: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
40527: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
40528: --
40529: -- bulk performance
40530: --
40523: 'RECEIVABLE';
40524:
40525: --
40526: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
40527: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
40528: --
40529: -- bulk performance
40530: --
40531: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
40527: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
40528: --
40529: -- bulk performance
40530: --
40531: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
40532:
40533: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
40534: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
40535:
40529: -- bulk performance
40530: --
40531: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
40532:
40533: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
40534: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
40535:
40536: -- 4955764
40537: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40533: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
40534: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
40535:
40536: -- 4955764
40537: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40538: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
40539:
40540: -- 4458381 Public Sector Enh
40541:
40569: l_rec_acct_attrs.array_char_value(11) := p_source_39;
40570: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
40571: l_rec_acct_attrs.array_num_value(12) := p_source_86;
40572:
40573: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
40574: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
40575:
40576: ---------------------------------------------------------------------------------------------------------------
40577: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40570: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
40571: l_rec_acct_attrs.array_num_value(12) := p_source_86;
40572:
40573: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
40574: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
40575:
40576: ---------------------------------------------------------------------------------------------------------------
40577: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40578: ---------------------------------------------------------------------------------------------------------------
40573: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
40574: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
40575:
40576: ---------------------------------------------------------------------------------------------------------------
40577: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40578: ---------------------------------------------------------------------------------------------------------------
40579: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40580:
40581: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40575:
40576: ---------------------------------------------------------------------------------------------------------------
40577: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40578: ---------------------------------------------------------------------------------------------------------------
40579: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40580:
40581: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40582: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40583:
40577: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40578: ---------------------------------------------------------------------------------------------------------------
40579: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40580:
40581: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40582: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40583:
40584: IF xla_accounting_cache_pkg.GetValueChar
40585: (p_source_code => 'LEDGER_CATEGORY_CODE'
40578: ---------------------------------------------------------------------------------------------------------------
40579: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40580:
40581: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40582: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40583:
40584: IF xla_accounting_cache_pkg.GetValueChar
40585: (p_source_code => 'LEDGER_CATEGORY_CODE'
40586: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
40589: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
40590: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
40591: )
40592: THEN
40593: xla_ae_lines_pkg.BflowUpgEntry
40594: (p_business_method_code => l_bflow_method_code
40595: ,p_business_class_code => l_bflow_class_code
40596: ,p_balance_type => l_balance_type_code);
40597: ELSE
40629: , x_value_type_code => l_adr_value_type_code
40630: , p_side => 'NA'
40631: );
40632:
40633: xla_ae_lines_pkg.set_ccid(
40634: p_code_combination_id => l_ccid
40635: , p_value_type_code => l_adr_value_type_code
40636: , p_transaction_coa_id => l_adr_transaction_coa_id
40637: , p_accounting_coa_id => l_adr_accounting_coa_id
40665: xla_accounting_err_pkg.build_message
40666: (p_appli_s_name => 'XLA'
40667: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
40668: ,p_token_1 => 'LINE_NUMBER'
40669: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
40670: ,p_token_2 => 'LINE_TYPE_NAME'
40671: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
40672: l_component_type
40673: ,l_component_code
40701: --
40702: --
40703: ------------------------------------------------------------------------------------------------
40704: -- 4219869 Business Flow
40705: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
40706: -- Prior Entry. Currently, the following code is always generated.
40707: ------------------------------------------------------------------------------------------------
40708: XLA_AE_LINES_PKG.ValidateCurrentLine;
40709:
40704: -- 4219869 Business Flow
40705: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
40706: -- Prior Entry. Currently, the following code is always generated.
40707: ------------------------------------------------------------------------------------------------
40708: XLA_AE_LINES_PKG.ValidateCurrentLine;
40709:
40710: ------------------------------------------------------------------------------------
40711: -- 4219869 Business Flow
40712: -- Populated credit and debit amounts -- Need to generate this within IF
40710: ------------------------------------------------------------------------------------
40711: -- 4219869 Business Flow
40712: -- Populated credit and debit amounts -- Need to generate this within IF
40713: ------------------------------------------------------------------------------------
40714: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40715:
40716: ----------------------------------------------------------------------------------
40717: -- 4219869 Business Flow
40718: -- Update journal entry status -- Need to generate this within IF
40742: -- To allow MPA report to determine if it should generate report process
40743: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
40744: ------------------------------------------------------------------------------------------
40745:
40746: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
40747: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
40748: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
40749: -- call ADRs
40750: -- Bug 4922099
40743: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
40744: ------------------------------------------------------------------------------------------
40745:
40746: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
40747: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
40748: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
40749: -- call ADRs
40750: -- Bug 4922099
40751: --
40767: , x_value_type_code => l_adr_value_type_code
40768: , p_side => 'NA'
40769: );
40770:
40771: xla_ae_lines_pkg.set_ccid(
40772: p_code_combination_id => l_ccid
40773: , p_value_type_code => l_adr_value_type_code
40774: , p_transaction_coa_id => l_adr_transaction_coa_id
40775: , p_accounting_coa_id => l_adr_accounting_coa_id
40790:
40791: --
40792: -- Update the line information that should be overwritten
40793: --
40794: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40795: p_header_num => 1);
40796: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40797:
40798: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40792: -- Update the line information that should be overwritten
40793: --
40794: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40795: p_header_num => 1);
40796: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40797:
40798: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40799:
40800: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40794: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40795: p_header_num => 1);
40796: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40797:
40798: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40799:
40800: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40801: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
40802: END IF;
40797:
40798: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40799:
40800: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40801: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
40802: END IF;
40803:
40804: --
40805: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
40804: --
40805: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
40806: --
40807: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
40808: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
40809: ELSE
40810: ---------------------------------------------------------------------------------------------------
40811: -- 4262811a Switch Sign
40812: ---------------------------------------------------------------------------------------------------
40809: ELSE
40810: ---------------------------------------------------------------------------------------------------
40811: -- 4262811a Switch Sign
40812: ---------------------------------------------------------------------------------------------------
40813: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40814: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40815: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40810: ---------------------------------------------------------------------------------------------------
40811: -- 4262811a Switch Sign
40812: ---------------------------------------------------------------------------------------------------
40813: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40814: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40815: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40818: -- 5132302
40811: -- 4262811a Switch Sign
40812: ---------------------------------------------------------------------------------------------------
40813: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40814: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40815: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40818: -- 5132302
40819: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40812: ---------------------------------------------------------------------------------------------------
40813: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40814: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40815: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40818: -- 5132302
40819: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40820: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40813: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40814: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40815: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40818: -- 5132302
40819: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40820: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40821:
40815: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40818: -- 5132302
40819: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40820: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40821:
40822: END IF;
40823:
40816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40818: -- 5132302
40819: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40820: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40821:
40822: END IF;
40823:
40824: -- 4955764
40821:
40822: END IF;
40823:
40824: -- 4955764
40825: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40826: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40827:
40828:
40829: XLA_AE_LINES_PKG.ValidateCurrentLine;
40825: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40826: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40827:
40828:
40829: XLA_AE_LINES_PKG.ValidateCurrentLine;
40830: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40831:
40832: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
40833: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
40826: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40827:
40828:
40829: XLA_AE_LINES_PKG.ValidateCurrentLine;
40830: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40831:
40832: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
40833: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
40834: ,p_balance_type_code => l_balance_type_code);
40963: --
40964: -- bulk performance
40965: --
40966: l_balance_type_code VARCHAR2(1);
40967: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
40968: l_log_module VARCHAR2(240);
40969:
40970: --
40971: -- Upgrade strategy
41033: ') = 'N'
41034: THEN
41035:
41036: --
41037: XLA_AE_LINES_PKG.SetNewLine;
41038:
41039: p_balance_type_code := l_balance_type_code;
41040: -- set the flag so later we will know whether the gain loss line needs to be created
41041:
41045:
41046: --
41047: -- bulk performance
41048: --
41049: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
41050: p_header_num => 0); -- 4262811
41051: --
41052: -- set accounting line options
41053: --
41050: p_header_num => 0); -- 4262811
41051: --
41052: -- set accounting line options
41053: --
41054: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
41055: p_natural_side_code => 'C'
41056: , p_gain_or_loss_flag => 'N'
41057: , p_gl_transfer_mode_code => 'S'
41058: , p_acct_entry_type_code => 'A'
41064: --
41065: --
41066: -- set accounting line type info
41067: --
41068: xla_ae_lines_pkg.SetAcctLineType
41069: (p_component_type => l_component_type
41070: ,p_event_type_code => l_event_type_code
41071: ,p_line_definition_owner_code => l_line_definition_owner_code
41072: ,p_line_definition_code => l_line_definition_code
41078: ,p_event_class_code => l_event_class_code);
41079: --
41080: -- set accounting class
41081: --
41082: xla_ae_lines_pkg.SetAcctClass(
41083: p_accounting_class_code => 'BANK_CHG'
41084: , p_ae_header_id => l_ae_header_id
41085: );
41086:
41086:
41087: --
41088: -- set rounding class
41089: --
41090: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
41091: 'RECEIVABLE';
41092:
41093: --
41094: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41090: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
41091: 'RECEIVABLE';
41092:
41093: --
41094: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41095: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41096: --
41097: -- bulk performance
41098: --
41091: 'RECEIVABLE';
41092:
41093: --
41094: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41095: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41096: --
41097: -- bulk performance
41098: --
41099: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41095: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41096: --
41097: -- bulk performance
41098: --
41099: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41100:
41101: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41102: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41103:
41097: -- bulk performance
41098: --
41099: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41100:
41101: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41102: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41103:
41104: -- 4955764
41105: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41101: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41102: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41103:
41104: -- 4955764
41105: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41106: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
41107:
41108: -- 4458381 Public Sector Enh
41109:
41129: l_rec_acct_attrs.array_char_value(7) := p_source_35;
41130: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
41131: l_rec_acct_attrs.array_num_value(8) := p_source_36;
41132:
41133: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41134: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41135:
41136: ---------------------------------------------------------------------------------------------------------------
41137: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41130: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
41131: l_rec_acct_attrs.array_num_value(8) := p_source_36;
41132:
41133: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41134: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41135:
41136: ---------------------------------------------------------------------------------------------------------------
41137: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41138: ---------------------------------------------------------------------------------------------------------------
41133: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41134: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41135:
41136: ---------------------------------------------------------------------------------------------------------------
41137: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41138: ---------------------------------------------------------------------------------------------------------------
41139: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41140:
41141: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41135:
41136: ---------------------------------------------------------------------------------------------------------------
41137: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41138: ---------------------------------------------------------------------------------------------------------------
41139: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41140:
41141: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41142: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41143:
41137: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41138: ---------------------------------------------------------------------------------------------------------------
41139: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41140:
41141: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41142: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41143:
41144: IF xla_accounting_cache_pkg.GetValueChar
41145: (p_source_code => 'LEDGER_CATEGORY_CODE'
41138: ---------------------------------------------------------------------------------------------------------------
41139: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41140:
41141: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41142: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41143:
41144: IF xla_accounting_cache_pkg.GetValueChar
41145: (p_source_code => 'LEDGER_CATEGORY_CODE'
41146: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
41149: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
41150: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
41151: )
41152: THEN
41153: xla_ae_lines_pkg.BflowUpgEntry
41154: (p_business_method_code => l_bflow_method_code
41155: ,p_business_class_code => l_bflow_class_code
41156: ,p_balance_type => l_balance_type_code);
41157: ELSE
41163: -- call analytical criteria
41164: --
41165:
41166:
41167: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
41168: xla_ae_lines_pkg.SetAnalyticalCriteria(
41169: p_analytical_criterion_name => 'Check Id'
41170: , p_analytical_criterion_owner => 'S'
41171: , p_analytical_criterion_code => 'CHECK_ID'
41164: --
41165:
41166:
41167: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
41168: xla_ae_lines_pkg.SetAnalyticalCriteria(
41169: p_analytical_criterion_name => 'Check Id'
41170: , p_analytical_criterion_owner => 'S'
41171: , p_analytical_criterion_code => 'CHECK_ID'
41172: , p_amb_context_code => 'DEFAULT'
41207: , x_value_type_code => l_adr_value_type_code
41208: , p_side => 'NA'
41209: );
41210:
41211: xla_ae_lines_pkg.set_ccid(
41212: p_code_combination_id => l_ccid
41213: , p_value_type_code => l_adr_value_type_code
41214: , p_transaction_coa_id => l_adr_transaction_coa_id
41215: , p_accounting_coa_id => l_adr_accounting_coa_id
41243: xla_accounting_err_pkg.build_message
41244: (p_appli_s_name => 'XLA'
41245: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
41246: ,p_token_1 => 'LINE_NUMBER'
41247: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
41248: ,p_token_2 => 'LINE_TYPE_NAME'
41249: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
41250: l_component_type
41251: ,l_component_code
41279: --
41280: --
41281: ------------------------------------------------------------------------------------------------
41282: -- 4219869 Business Flow
41283: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
41284: -- Prior Entry. Currently, the following code is always generated.
41285: ------------------------------------------------------------------------------------------------
41286: XLA_AE_LINES_PKG.ValidateCurrentLine;
41287:
41282: -- 4219869 Business Flow
41283: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
41284: -- Prior Entry. Currently, the following code is always generated.
41285: ------------------------------------------------------------------------------------------------
41286: XLA_AE_LINES_PKG.ValidateCurrentLine;
41287:
41288: ------------------------------------------------------------------------------------
41289: -- 4219869 Business Flow
41290: -- Populated credit and debit amounts -- Need to generate this within IF
41288: ------------------------------------------------------------------------------------
41289: -- 4219869 Business Flow
41290: -- Populated credit and debit amounts -- Need to generate this within IF
41291: ------------------------------------------------------------------------------------
41292: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41293:
41294: ----------------------------------------------------------------------------------
41295: -- 4219869 Business Flow
41296: -- Update journal entry status -- Need to generate this within IF
41320: -- To allow MPA report to determine if it should generate report process
41321: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
41322: ------------------------------------------------------------------------------------------
41323:
41324: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
41325: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
41326: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
41327: -- call ADRs
41328: -- Bug 4922099
41321: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
41322: ------------------------------------------------------------------------------------------
41323:
41324: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
41325: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
41326: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
41327: -- call ADRs
41328: -- Bug 4922099
41329: --
41345: , x_value_type_code => l_adr_value_type_code
41346: , p_side => 'NA'
41347: );
41348:
41349: xla_ae_lines_pkg.set_ccid(
41350: p_code_combination_id => l_ccid
41351: , p_value_type_code => l_adr_value_type_code
41352: , p_transaction_coa_id => l_adr_transaction_coa_id
41353: , p_accounting_coa_id => l_adr_accounting_coa_id
41368:
41369: --
41370: -- Update the line information that should be overwritten
41371: --
41372: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41373: p_header_num => 1);
41374: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41375:
41376: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41370: -- Update the line information that should be overwritten
41371: --
41372: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41373: p_header_num => 1);
41374: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41375:
41376: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41377:
41378: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41372: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41373: p_header_num => 1);
41374: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41375:
41376: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41377:
41378: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41379: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
41380: END IF;
41375:
41376: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41377:
41378: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41379: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
41380: END IF;
41381:
41382: --
41383: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
41382: --
41383: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
41384: --
41385: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
41386: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
41387: ELSE
41388: ---------------------------------------------------------------------------------------------------
41389: -- 4262811a Switch Sign
41390: ---------------------------------------------------------------------------------------------------
41387: ELSE
41388: ---------------------------------------------------------------------------------------------------
41389: -- 4262811a Switch Sign
41390: ---------------------------------------------------------------------------------------------------
41391: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41392: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41393: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41394: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41395: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41388: ---------------------------------------------------------------------------------------------------
41389: -- 4262811a Switch Sign
41390: ---------------------------------------------------------------------------------------------------
41391: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41392: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41393: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41394: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41395: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41396: -- 5132302
41389: -- 4262811a Switch Sign
41390: ---------------------------------------------------------------------------------------------------
41391: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41392: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41393: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41394: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41395: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41396: -- 5132302
41397: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41390: ---------------------------------------------------------------------------------------------------
41391: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41392: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41393: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41394: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41395: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41396: -- 5132302
41397: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41398: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41391: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41392: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41393: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41394: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41395: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41396: -- 5132302
41397: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41398: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41399:
41393: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41394: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41395: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41396: -- 5132302
41397: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41398: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41399:
41400: END IF;
41401:
41394: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41395: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41396: -- 5132302
41397: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41398: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41399:
41400: END IF;
41401:
41402: -- 4955764
41399:
41400: END IF;
41401:
41402: -- 4955764
41403: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41404: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41405:
41406:
41407: XLA_AE_LINES_PKG.ValidateCurrentLine;
41403: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41404: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41405:
41406:
41407: XLA_AE_LINES_PKG.ValidateCurrentLine;
41408: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41409:
41410: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
41411: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
41404: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41405:
41406:
41407: XLA_AE_LINES_PKG.ValidateCurrentLine;
41408: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41409:
41410: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
41411: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
41412: ,p_balance_type_code => l_balance_type_code);
41541: --
41542: -- bulk performance
41543: --
41544: l_balance_type_code VARCHAR2(1);
41545: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
41546: l_log_module VARCHAR2(240);
41547:
41548: --
41549: -- Upgrade strategy
41611: ') = 'N'
41612: THEN
41613:
41614: --
41615: XLA_AE_LINES_PKG.SetNewLine;
41616:
41617: p_balance_type_code := l_balance_type_code;
41618: -- set the flag so later we will know whether the gain loss line needs to be created
41619:
41623:
41624: --
41625: -- bulk performance
41626: --
41627: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
41628: p_header_num => 0); -- 4262811
41629: --
41630: -- set accounting line options
41631: --
41628: p_header_num => 0); -- 4262811
41629: --
41630: -- set accounting line options
41631: --
41632: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
41633: p_natural_side_code => 'C'
41634: , p_gain_or_loss_flag => 'N'
41635: , p_gl_transfer_mode_code => 'S'
41636: , p_acct_entry_type_code => 'A'
41642: --
41643: --
41644: -- set accounting line type info
41645: --
41646: xla_ae_lines_pkg.SetAcctLineType
41647: (p_component_type => l_component_type
41648: ,p_event_type_code => l_event_type_code
41649: ,p_line_definition_owner_code => l_line_definition_owner_code
41650: ,p_line_definition_code => l_line_definition_code
41656: ,p_event_class_code => l_event_class_code);
41657: --
41658: -- set accounting class
41659: --
41660: xla_ae_lines_pkg.SetAcctClass(
41661: p_accounting_class_code => 'CASH'
41662: , p_ae_header_id => l_ae_header_id
41663: );
41664:
41664:
41665: --
41666: -- set rounding class
41667: --
41668: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
41669: 'RECEIVABLE';
41670:
41671: --
41672: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41668: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
41669: 'RECEIVABLE';
41670:
41671: --
41672: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41673: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41674: --
41675: -- bulk performance
41676: --
41669: 'RECEIVABLE';
41670:
41671: --
41672: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41673: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41674: --
41675: -- bulk performance
41676: --
41677: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41673: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41674: --
41675: -- bulk performance
41676: --
41677: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41678:
41679: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41680: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41681:
41675: -- bulk performance
41676: --
41677: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41678:
41679: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41680: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41681:
41682: -- 4955764
41683: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41679: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41680: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41681:
41682: -- 4955764
41683: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41684: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
41685:
41686: -- 4458381 Public Sector Enh
41687:
41707: l_rec_acct_attrs.array_char_value(7) := p_source_35;
41708: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
41709: l_rec_acct_attrs.array_num_value(8) := p_source_36;
41710:
41711: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41712: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41713:
41714: ---------------------------------------------------------------------------------------------------------------
41715: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41708: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
41709: l_rec_acct_attrs.array_num_value(8) := p_source_36;
41710:
41711: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41712: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41713:
41714: ---------------------------------------------------------------------------------------------------------------
41715: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41716: ---------------------------------------------------------------------------------------------------------------
41711: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41712: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41713:
41714: ---------------------------------------------------------------------------------------------------------------
41715: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41716: ---------------------------------------------------------------------------------------------------------------
41717: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41718:
41719: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41713:
41714: ---------------------------------------------------------------------------------------------------------------
41715: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41716: ---------------------------------------------------------------------------------------------------------------
41717: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41718:
41719: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41720: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41721:
41715: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41716: ---------------------------------------------------------------------------------------------------------------
41717: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41718:
41719: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41720: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41721:
41722: IF xla_accounting_cache_pkg.GetValueChar
41723: (p_source_code => 'LEDGER_CATEGORY_CODE'
41716: ---------------------------------------------------------------------------------------------------------------
41717: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41718:
41719: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41720: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41721:
41722: IF xla_accounting_cache_pkg.GetValueChar
41723: (p_source_code => 'LEDGER_CATEGORY_CODE'
41724: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
41727: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
41728: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
41729: )
41730: THEN
41731: xla_ae_lines_pkg.BflowUpgEntry
41732: (p_business_method_code => l_bflow_method_code
41733: ,p_business_class_code => l_bflow_class_code
41734: ,p_balance_type => l_balance_type_code);
41735: ELSE
41741: -- call analytical criteria
41742: --
41743:
41744:
41745: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
41746: xla_ae_lines_pkg.SetAnalyticalCriteria(
41747: p_analytical_criterion_name => 'Check Id'
41748: , p_analytical_criterion_owner => 'S'
41749: , p_analytical_criterion_code => 'CHECK_ID'
41742: --
41743:
41744:
41745: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
41746: xla_ae_lines_pkg.SetAnalyticalCriteria(
41747: p_analytical_criterion_name => 'Check Id'
41748: , p_analytical_criterion_owner => 'S'
41749: , p_analytical_criterion_code => 'CHECK_ID'
41750: , p_amb_context_code => 'DEFAULT'
41785: , x_value_type_code => l_adr_value_type_code
41786: , p_side => 'NA'
41787: );
41788:
41789: xla_ae_lines_pkg.set_ccid(
41790: p_code_combination_id => l_ccid
41791: , p_value_type_code => l_adr_value_type_code
41792: , p_transaction_coa_id => l_adr_transaction_coa_id
41793: , p_accounting_coa_id => l_adr_accounting_coa_id
41821: xla_accounting_err_pkg.build_message
41822: (p_appli_s_name => 'XLA'
41823: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
41824: ,p_token_1 => 'LINE_NUMBER'
41825: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
41826: ,p_token_2 => 'LINE_TYPE_NAME'
41827: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
41828: l_component_type
41829: ,l_component_code
41857: --
41858: --
41859: ------------------------------------------------------------------------------------------------
41860: -- 4219869 Business Flow
41861: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
41862: -- Prior Entry. Currently, the following code is always generated.
41863: ------------------------------------------------------------------------------------------------
41864: XLA_AE_LINES_PKG.ValidateCurrentLine;
41865:
41860: -- 4219869 Business Flow
41861: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
41862: -- Prior Entry. Currently, the following code is always generated.
41863: ------------------------------------------------------------------------------------------------
41864: XLA_AE_LINES_PKG.ValidateCurrentLine;
41865:
41866: ------------------------------------------------------------------------------------
41867: -- 4219869 Business Flow
41868: -- Populated credit and debit amounts -- Need to generate this within IF
41866: ------------------------------------------------------------------------------------
41867: -- 4219869 Business Flow
41868: -- Populated credit and debit amounts -- Need to generate this within IF
41869: ------------------------------------------------------------------------------------
41870: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41871:
41872: ----------------------------------------------------------------------------------
41873: -- 4219869 Business Flow
41874: -- Update journal entry status -- Need to generate this within IF
41898: -- To allow MPA report to determine if it should generate report process
41899: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
41900: ------------------------------------------------------------------------------------------
41901:
41902: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
41903: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
41904: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
41905: -- call ADRs
41906: -- Bug 4922099
41899: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
41900: ------------------------------------------------------------------------------------------
41901:
41902: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
41903: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
41904: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
41905: -- call ADRs
41906: -- Bug 4922099
41907: --
41923: , x_value_type_code => l_adr_value_type_code
41924: , p_side => 'NA'
41925: );
41926:
41927: xla_ae_lines_pkg.set_ccid(
41928: p_code_combination_id => l_ccid
41929: , p_value_type_code => l_adr_value_type_code
41930: , p_transaction_coa_id => l_adr_transaction_coa_id
41931: , p_accounting_coa_id => l_adr_accounting_coa_id
41946:
41947: --
41948: -- Update the line information that should be overwritten
41949: --
41950: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41951: p_header_num => 1);
41952: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41953:
41954: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41948: -- Update the line information that should be overwritten
41949: --
41950: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41951: p_header_num => 1);
41952: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41953:
41954: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41955:
41956: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41950: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41951: p_header_num => 1);
41952: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41953:
41954: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41955:
41956: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41957: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
41958: END IF;
41953:
41954: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41955:
41956: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41957: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
41958: END IF;
41959:
41960: --
41961: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
41960: --
41961: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
41962: --
41963: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
41964: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
41965: ELSE
41966: ---------------------------------------------------------------------------------------------------
41967: -- 4262811a Switch Sign
41968: ---------------------------------------------------------------------------------------------------
41965: ELSE
41966: ---------------------------------------------------------------------------------------------------
41967: -- 4262811a Switch Sign
41968: ---------------------------------------------------------------------------------------------------
41969: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41970: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41971: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41972: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41973: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41966: ---------------------------------------------------------------------------------------------------
41967: -- 4262811a Switch Sign
41968: ---------------------------------------------------------------------------------------------------
41969: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41970: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41971: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41972: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41973: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41974: -- 5132302
41967: -- 4262811a Switch Sign
41968: ---------------------------------------------------------------------------------------------------
41969: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41970: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41971: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41972: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41973: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41974: -- 5132302
41975: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41968: ---------------------------------------------------------------------------------------------------
41969: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41970: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41971: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41972: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41973: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41974: -- 5132302
41975: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41976: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41969: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41970: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41971: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41972: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41973: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41974: -- 5132302
41975: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41976: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41977:
41971: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41972: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41973: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41974: -- 5132302
41975: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41976: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41977:
41978: END IF;
41979:
41972: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41973: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41974: -- 5132302
41975: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41976: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41977:
41978: END IF;
41979:
41980: -- 4955764
41977:
41978: END IF;
41979:
41980: -- 4955764
41981: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41982: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41983:
41984:
41985: XLA_AE_LINES_PKG.ValidateCurrentLine;
41981: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41982: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41983:
41984:
41985: XLA_AE_LINES_PKG.ValidateCurrentLine;
41986: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41987:
41988: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
41989: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
41982: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41983:
41984:
41985: XLA_AE_LINES_PKG.ValidateCurrentLine;
41986: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41987:
41988: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
41989: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
41990: ,p_balance_type_code => l_balance_type_code);
42119: --
42120: -- bulk performance
42121: --
42122: l_balance_type_code VARCHAR2(1);
42123: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
42124: l_log_module VARCHAR2(240);
42125:
42126: --
42127: -- Upgrade strategy
42189: ') = 'N'
42190: THEN
42191:
42192: --
42193: XLA_AE_LINES_PKG.SetNewLine;
42194:
42195: p_balance_type_code := l_balance_type_code;
42196: -- set the flag so later we will know whether the gain loss line needs to be created
42197:
42201:
42202: --
42203: -- bulk performance
42204: --
42205: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
42206: p_header_num => 0); -- 4262811
42207: --
42208: -- set accounting line options
42209: --
42206: p_header_num => 0); -- 4262811
42207: --
42208: -- set accounting line options
42209: --
42210: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
42211: p_natural_side_code => 'C'
42212: , p_gain_or_loss_flag => 'N'
42213: , p_gl_transfer_mode_code => 'S'
42214: , p_acct_entry_type_code => 'A'
42220: --
42221: --
42222: -- set accounting line type info
42223: --
42224: xla_ae_lines_pkg.SetAcctLineType
42225: (p_component_type => l_component_type
42226: ,p_event_type_code => l_event_type_code
42227: ,p_line_definition_owner_code => l_line_definition_owner_code
42228: ,p_line_definition_code => l_line_definition_code
42234: ,p_event_class_code => l_event_class_code);
42235: --
42236: -- set accounting class
42237: --
42238: xla_ae_lines_pkg.SetAcctClass(
42239: p_accounting_class_code => 'CONFIRMATION'
42240: , p_ae_header_id => l_ae_header_id
42241: );
42242:
42242:
42243: --
42244: -- set rounding class
42245: --
42246: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
42247: 'RECEIVABLE';
42248:
42249: --
42250: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42246: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
42247: 'RECEIVABLE';
42248:
42249: --
42250: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42251: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42252: --
42253: -- bulk performance
42254: --
42247: 'RECEIVABLE';
42248:
42249: --
42250: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42251: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42252: --
42253: -- bulk performance
42254: --
42255: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42251: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42252: --
42253: -- bulk performance
42254: --
42255: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42256:
42257: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42258: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42259:
42253: -- bulk performance
42254: --
42255: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42256:
42257: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42258: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42259:
42260: -- 4955764
42261: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42257: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42258: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42259:
42260: -- 4955764
42261: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42262: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
42263:
42264: -- 4458381 Public Sector Enh
42265:
42285: l_rec_acct_attrs.array_char_value(7) := p_source_35;
42286: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
42287: l_rec_acct_attrs.array_num_value(8) := p_source_36;
42288:
42289: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42290: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42291:
42292: ---------------------------------------------------------------------------------------------------------------
42293: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42286: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
42287: l_rec_acct_attrs.array_num_value(8) := p_source_36;
42288:
42289: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42290: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42291:
42292: ---------------------------------------------------------------------------------------------------------------
42293: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42294: ---------------------------------------------------------------------------------------------------------------
42289: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42290: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42291:
42292: ---------------------------------------------------------------------------------------------------------------
42293: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42294: ---------------------------------------------------------------------------------------------------------------
42295: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42296:
42297: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42291:
42292: ---------------------------------------------------------------------------------------------------------------
42293: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42294: ---------------------------------------------------------------------------------------------------------------
42295: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42296:
42297: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42298: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42299:
42293: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42294: ---------------------------------------------------------------------------------------------------------------
42295: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42296:
42297: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42298: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42299:
42300: IF xla_accounting_cache_pkg.GetValueChar
42301: (p_source_code => 'LEDGER_CATEGORY_CODE'
42294: ---------------------------------------------------------------------------------------------------------------
42295: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42296:
42297: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42298: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42299:
42300: IF xla_accounting_cache_pkg.GetValueChar
42301: (p_source_code => 'LEDGER_CATEGORY_CODE'
42302: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
42305: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
42306: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
42307: )
42308: THEN
42309: xla_ae_lines_pkg.BflowUpgEntry
42310: (p_business_method_code => l_bflow_method_code
42311: ,p_business_class_code => l_bflow_class_code
42312: ,p_balance_type => l_balance_type_code);
42313: ELSE
42319: -- call analytical criteria
42320: --
42321:
42322:
42323: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
42324: xla_ae_lines_pkg.SetAnalyticalCriteria(
42325: p_analytical_criterion_name => 'Check Id'
42326: , p_analytical_criterion_owner => 'S'
42327: , p_analytical_criterion_code => 'CHECK_ID'
42320: --
42321:
42322:
42323: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
42324: xla_ae_lines_pkg.SetAnalyticalCriteria(
42325: p_analytical_criterion_name => 'Check Id'
42326: , p_analytical_criterion_owner => 'S'
42327: , p_analytical_criterion_code => 'CHECK_ID'
42328: , p_amb_context_code => 'DEFAULT'
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
42399: xla_accounting_err_pkg.build_message
42400: (p_appli_s_name => 'XLA'
42401: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
42402: ,p_token_1 => 'LINE_NUMBER'
42403: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
42404: ,p_token_2 => 'LINE_TYPE_NAME'
42405: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
42406: l_component_type
42407: ,l_component_code
42435: --
42436: --
42437: ------------------------------------------------------------------------------------------------
42438: -- 4219869 Business Flow
42439: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
42440: -- Prior Entry. Currently, the following code is always generated.
42441: ------------------------------------------------------------------------------------------------
42442: XLA_AE_LINES_PKG.ValidateCurrentLine;
42443:
42438: -- 4219869 Business Flow
42439: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
42440: -- Prior Entry. Currently, the following code is always generated.
42441: ------------------------------------------------------------------------------------------------
42442: XLA_AE_LINES_PKG.ValidateCurrentLine;
42443:
42444: ------------------------------------------------------------------------------------
42445: -- 4219869 Business Flow
42446: -- Populated credit and debit amounts -- Need to generate this within IF
42444: ------------------------------------------------------------------------------------
42445: -- 4219869 Business Flow
42446: -- Populated credit and debit amounts -- Need to generate this within IF
42447: ------------------------------------------------------------------------------------
42448: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
42449:
42450: ----------------------------------------------------------------------------------
42451: -- 4219869 Business Flow
42452: -- Update journal entry status -- Need to generate this within IF
42476: -- To allow MPA report to determine if it should generate report process
42477: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
42478: ------------------------------------------------------------------------------------------
42479:
42480: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
42481: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
42482: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
42483: -- call ADRs
42484: -- Bug 4922099
42477: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
42478: ------------------------------------------------------------------------------------------
42479:
42480: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
42481: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
42482: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
42483: -- call ADRs
42484: -- Bug 4922099
42485: --
42501: , x_value_type_code => l_adr_value_type_code
42502: , p_side => 'NA'
42503: );
42504:
42505: xla_ae_lines_pkg.set_ccid(
42506: p_code_combination_id => l_ccid
42507: , p_value_type_code => l_adr_value_type_code
42508: , p_transaction_coa_id => l_adr_transaction_coa_id
42509: , p_accounting_coa_id => l_adr_accounting_coa_id
42524:
42525: --
42526: -- Update the line information that should be overwritten
42527: --
42528: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
42529: p_header_num => 1);
42530: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
42531:
42532: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42526: -- Update the line information that should be overwritten
42527: --
42528: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
42529: p_header_num => 1);
42530: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
42531:
42532: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42533:
42534: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
42528: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
42529: p_header_num => 1);
42530: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
42531:
42532: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42533:
42534: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
42535: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
42536: END IF;
42531:
42532: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42533:
42534: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
42535: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
42536: END IF;
42537:
42538: --
42539: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
42538: --
42539: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
42540: --
42541: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
42542: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
42543: ELSE
42544: ---------------------------------------------------------------------------------------------------
42545: -- 4262811a Switch Sign
42546: ---------------------------------------------------------------------------------------------------
42543: ELSE
42544: ---------------------------------------------------------------------------------------------------
42545: -- 4262811a Switch Sign
42546: ---------------------------------------------------------------------------------------------------
42547: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42548: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42549: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42544: ---------------------------------------------------------------------------------------------------
42545: -- 4262811a Switch Sign
42546: ---------------------------------------------------------------------------------------------------
42547: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42548: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42549: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42552: -- 5132302
42545: -- 4262811a Switch Sign
42546: ---------------------------------------------------------------------------------------------------
42547: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42548: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42549: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42552: -- 5132302
42553: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42546: ---------------------------------------------------------------------------------------------------
42547: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42548: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42549: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42552: -- 5132302
42553: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42554: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42547: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42548: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42549: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42552: -- 5132302
42553: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42554: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42555:
42549: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42552: -- 5132302
42553: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42554: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42555:
42556: END IF;
42557:
42550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42552: -- 5132302
42553: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42554: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42555:
42556: END IF;
42557:
42558: -- 4955764
42555:
42556: END IF;
42557:
42558: -- 4955764
42559: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42560: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
42561:
42562:
42563: XLA_AE_LINES_PKG.ValidateCurrentLine;
42559: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42560: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
42561:
42562:
42563: XLA_AE_LINES_PKG.ValidateCurrentLine;
42564: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
42565:
42566: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
42567: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
42560: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
42561:
42562:
42563: XLA_AE_LINES_PKG.ValidateCurrentLine;
42564: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
42565:
42566: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
42567: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
42568: ,p_balance_type_code => l_balance_type_code);
42697: --
42698: -- bulk performance
42699: --
42700: l_balance_type_code VARCHAR2(1);
42701: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
42702: l_log_module VARCHAR2(240);
42703:
42704: --
42705: -- Upgrade strategy
42767: ') = 'N'
42768: THEN
42769:
42770: --
42771: XLA_AE_LINES_PKG.SetNewLine;
42772:
42773: p_balance_type_code := l_balance_type_code;
42774: -- set the flag so later we will know whether the gain loss line needs to be created
42775:
42779:
42780: --
42781: -- bulk performance
42782: --
42783: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
42784: p_header_num => 0); -- 4262811
42785: --
42786: -- set accounting line options
42787: --
42784: p_header_num => 0); -- 4262811
42785: --
42786: -- set accounting line options
42787: --
42788: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
42789: p_natural_side_code => 'C'
42790: , p_gain_or_loss_flag => 'N'
42791: , p_gl_transfer_mode_code => 'S'
42792: , p_acct_entry_type_code => 'A'
42798: --
42799: --
42800: -- set accounting line type info
42801: --
42802: xla_ae_lines_pkg.SetAcctLineType
42803: (p_component_type => l_component_type
42804: ,p_event_type_code => l_event_type_code
42805: ,p_line_definition_owner_code => l_line_definition_owner_code
42806: ,p_line_definition_code => l_line_definition_code
42812: ,p_event_class_code => l_event_class_code);
42813: --
42814: -- set accounting class
42815: --
42816: xla_ae_lines_pkg.SetAcctClass(
42817: p_accounting_class_code => 'SHORT_TERM_DEBT'
42818: , p_ae_header_id => l_ae_header_id
42819: );
42820:
42820:
42821: --
42822: -- set rounding class
42823: --
42824: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
42825: 'RECEIVABLE';
42826:
42827: --
42828: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42824: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
42825: 'RECEIVABLE';
42826:
42827: --
42828: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42829: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42830: --
42831: -- bulk performance
42832: --
42825: 'RECEIVABLE';
42826:
42827: --
42828: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42829: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42830: --
42831: -- bulk performance
42832: --
42833: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42829: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42830: --
42831: -- bulk performance
42832: --
42833: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42834:
42835: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42836: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42837:
42831: -- bulk performance
42832: --
42833: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42834:
42835: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42836: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42837:
42838: -- 4955764
42839: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42835: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42836: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42837:
42838: -- 4955764
42839: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42840: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
42841:
42842: -- 4458381 Public Sector Enh
42843:
42863: l_rec_acct_attrs.array_char_value(7) := p_source_35;
42864: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
42865: l_rec_acct_attrs.array_num_value(8) := p_source_36;
42866:
42867: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42868: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42869:
42870: ---------------------------------------------------------------------------------------------------------------
42871: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42864: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
42865: l_rec_acct_attrs.array_num_value(8) := p_source_36;
42866:
42867: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42868: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42869:
42870: ---------------------------------------------------------------------------------------------------------------
42871: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42872: ---------------------------------------------------------------------------------------------------------------
42867: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42868: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42869:
42870: ---------------------------------------------------------------------------------------------------------------
42871: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42872: ---------------------------------------------------------------------------------------------------------------
42873: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42874:
42875: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42869:
42870: ---------------------------------------------------------------------------------------------------------------
42871: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42872: ---------------------------------------------------------------------------------------------------------------
42873: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42874:
42875: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42876: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42877:
42871: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42872: ---------------------------------------------------------------------------------------------------------------
42873: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42874:
42875: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42876: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42877:
42878: IF xla_accounting_cache_pkg.GetValueChar
42879: (p_source_code => 'LEDGER_CATEGORY_CODE'
42872: ---------------------------------------------------------------------------------------------------------------
42873: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42874:
42875: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42876: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42877:
42878: IF xla_accounting_cache_pkg.GetValueChar
42879: (p_source_code => 'LEDGER_CATEGORY_CODE'
42880: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
42883: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
42884: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
42885: )
42886: THEN
42887: xla_ae_lines_pkg.BflowUpgEntry
42888: (p_business_method_code => l_bflow_method_code
42889: ,p_business_class_code => l_bflow_class_code
42890: ,p_balance_type => l_balance_type_code);
42891: ELSE
42897: -- call analytical criteria
42898: --
42899:
42900:
42901: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
42902: xla_ae_lines_pkg.SetAnalyticalCriteria(
42903: p_analytical_criterion_name => 'Check Id'
42904: , p_analytical_criterion_owner => 'S'
42905: , p_analytical_criterion_code => 'CHECK_ID'
42898: --
42899:
42900:
42901: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
42902: xla_ae_lines_pkg.SetAnalyticalCriteria(
42903: p_analytical_criterion_name => 'Check Id'
42904: , p_analytical_criterion_owner => 'S'
42905: , p_analytical_criterion_code => 'CHECK_ID'
42906: , p_amb_context_code => 'DEFAULT'
42941: , x_value_type_code => l_adr_value_type_code
42942: , p_side => 'NA'
42943: );
42944:
42945: xla_ae_lines_pkg.set_ccid(
42946: p_code_combination_id => l_ccid
42947: , p_value_type_code => l_adr_value_type_code
42948: , p_transaction_coa_id => l_adr_transaction_coa_id
42949: , p_accounting_coa_id => l_adr_accounting_coa_id
42977: xla_accounting_err_pkg.build_message
42978: (p_appli_s_name => 'XLA'
42979: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
42980: ,p_token_1 => 'LINE_NUMBER'
42981: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
42982: ,p_token_2 => 'LINE_TYPE_NAME'
42983: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
42984: l_component_type
42985: ,l_component_code
43013: --
43014: --
43015: ------------------------------------------------------------------------------------------------
43016: -- 4219869 Business Flow
43017: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
43018: -- Prior Entry. Currently, the following code is always generated.
43019: ------------------------------------------------------------------------------------------------
43020: XLA_AE_LINES_PKG.ValidateCurrentLine;
43021:
43016: -- 4219869 Business Flow
43017: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
43018: -- Prior Entry. Currently, the following code is always generated.
43019: ------------------------------------------------------------------------------------------------
43020: XLA_AE_LINES_PKG.ValidateCurrentLine;
43021:
43022: ------------------------------------------------------------------------------------
43023: -- 4219869 Business Flow
43024: -- Populated credit and debit amounts -- Need to generate this within IF
43022: ------------------------------------------------------------------------------------
43023: -- 4219869 Business Flow
43024: -- Populated credit and debit amounts -- Need to generate this within IF
43025: ------------------------------------------------------------------------------------
43026: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
43027:
43028: ----------------------------------------------------------------------------------
43029: -- 4219869 Business Flow
43030: -- Update journal entry status -- Need to generate this within IF
43054: -- To allow MPA report to determine if it should generate report process
43055: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
43056: ------------------------------------------------------------------------------------------
43057:
43058: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
43059: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
43060: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
43061: -- call ADRs
43062: -- Bug 4922099
43055: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
43056: ------------------------------------------------------------------------------------------
43057:
43058: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
43059: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
43060: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
43061: -- call ADRs
43062: -- Bug 4922099
43063: --
43079: , x_value_type_code => l_adr_value_type_code
43080: , p_side => 'NA'
43081: );
43082:
43083: xla_ae_lines_pkg.set_ccid(
43084: p_code_combination_id => l_ccid
43085: , p_value_type_code => l_adr_value_type_code
43086: , p_transaction_coa_id => l_adr_transaction_coa_id
43087: , p_accounting_coa_id => l_adr_accounting_coa_id
43102:
43103: --
43104: -- Update the line information that should be overwritten
43105: --
43106: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
43107: p_header_num => 1);
43108: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
43109:
43110: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43104: -- Update the line information that should be overwritten
43105: --
43106: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
43107: p_header_num => 1);
43108: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
43109:
43110: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43111:
43112: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
43106: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
43107: p_header_num => 1);
43108: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
43109:
43110: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43111:
43112: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
43113: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
43114: END IF;
43109:
43110: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43111:
43112: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
43113: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
43114: END IF;
43115:
43116: --
43117: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
43116: --
43117: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
43118: --
43119: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
43120: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
43121: ELSE
43122: ---------------------------------------------------------------------------------------------------
43123: -- 4262811a Switch Sign
43124: ---------------------------------------------------------------------------------------------------
43121: ELSE
43122: ---------------------------------------------------------------------------------------------------
43123: -- 4262811a Switch Sign
43124: ---------------------------------------------------------------------------------------------------
43125: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43126: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43127: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43128: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43129: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43122: ---------------------------------------------------------------------------------------------------
43123: -- 4262811a Switch Sign
43124: ---------------------------------------------------------------------------------------------------
43125: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43126: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43127: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43128: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43129: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43130: -- 5132302
43123: -- 4262811a Switch Sign
43124: ---------------------------------------------------------------------------------------------------
43125: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43126: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43127: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43128: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43129: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43130: -- 5132302
43131: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43124: ---------------------------------------------------------------------------------------------------
43125: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43126: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43127: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43128: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43129: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43130: -- 5132302
43131: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43132: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43125: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43126: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43127: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43128: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43129: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43130: -- 5132302
43131: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43132: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43133:
43127: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43128: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43129: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43130: -- 5132302
43131: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43132: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43133:
43134: END IF;
43135:
43128: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43129: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43130: -- 5132302
43131: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43132: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43133:
43134: END IF;
43135:
43136: -- 4955764
43133:
43134: END IF;
43135:
43136: -- 4955764
43137: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43138: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
43139:
43140:
43141: XLA_AE_LINES_PKG.ValidateCurrentLine;
43137: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43138: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
43139:
43140:
43141: XLA_AE_LINES_PKG.ValidateCurrentLine;
43142: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
43143:
43144: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
43145: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
43138: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
43139:
43140:
43141: XLA_AE_LINES_PKG.ValidateCurrentLine;
43142: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
43143:
43144: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
43145: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
43146: ,p_balance_type_code => l_balance_type_code);
43275: --
43276: -- bulk performance
43277: --
43278: l_balance_type_code VARCHAR2(1);
43279: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
43280: l_log_module VARCHAR2(240);
43281:
43282: --
43283: -- Upgrade strategy
43345: ') = 'N'
43346: THEN
43347:
43348: --
43349: XLA_AE_LINES_PKG.SetNewLine;
43350:
43351: p_balance_type_code := l_balance_type_code;
43352: -- set the flag so later we will know whether the gain loss line needs to be created
43353:
43357:
43358: --
43359: -- bulk performance
43360: --
43361: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
43362: p_header_num => 0); -- 4262811
43363: --
43364: -- set accounting line options
43365: --
43362: p_header_num => 0); -- 4262811
43363: --
43364: -- set accounting line options
43365: --
43366: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
43367: p_natural_side_code => 'C'
43368: , p_gain_or_loss_flag => 'N'
43369: , p_gl_transfer_mode_code => 'S'
43370: , p_acct_entry_type_code => 'A'
43376: --
43377: --
43378: -- set accounting line type info
43379: --
43380: xla_ae_lines_pkg.SetAcctLineType
43381: (p_component_type => l_component_type
43382: ,p_event_type_code => l_event_type_code
43383: ,p_line_definition_owner_code => l_line_definition_owner_code
43384: ,p_line_definition_code => l_line_definition_code
43390: ,p_event_class_code => l_event_class_code);
43391: --
43392: -- set accounting class
43393: --
43394: xla_ae_lines_pkg.SetAcctClass(
43395: p_accounting_class_code => 'FACTOR'
43396: , p_ae_header_id => l_ae_header_id
43397: );
43398:
43398:
43399: --
43400: -- set rounding class
43401: --
43402: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
43403: 'RECEIVABLE';
43404:
43405: --
43406: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43402: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
43403: 'RECEIVABLE';
43404:
43405: --
43406: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43407: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43408: --
43409: -- bulk performance
43410: --
43403: 'RECEIVABLE';
43404:
43405: --
43406: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43407: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43408: --
43409: -- bulk performance
43410: --
43411: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43407: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43408: --
43409: -- bulk performance
43410: --
43411: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43412:
43413: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43414: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43415:
43409: -- bulk performance
43410: --
43411: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43412:
43413: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43414: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43415:
43416: -- 4955764
43417: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43413: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43414: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43415:
43416: -- 4955764
43417: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43418: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
43419:
43420: -- 4458381 Public Sector Enh
43421:
43441: l_rec_acct_attrs.array_char_value(7) := p_source_35;
43442: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
43443: l_rec_acct_attrs.array_num_value(8) := p_source_36;
43444:
43445: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
43446: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
43447:
43448: ---------------------------------------------------------------------------------------------------------------
43449: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43442: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
43443: l_rec_acct_attrs.array_num_value(8) := p_source_36;
43444:
43445: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
43446: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
43447:
43448: ---------------------------------------------------------------------------------------------------------------
43449: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43450: ---------------------------------------------------------------------------------------------------------------
43445: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
43446: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
43447:
43448: ---------------------------------------------------------------------------------------------------------------
43449: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43450: ---------------------------------------------------------------------------------------------------------------
43451: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43452:
43453: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43447:
43448: ---------------------------------------------------------------------------------------------------------------
43449: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43450: ---------------------------------------------------------------------------------------------------------------
43451: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43452:
43453: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43454: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43455:
43449: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43450: ---------------------------------------------------------------------------------------------------------------
43451: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43452:
43453: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43454: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43455:
43456: IF xla_accounting_cache_pkg.GetValueChar
43457: (p_source_code => 'LEDGER_CATEGORY_CODE'
43450: ---------------------------------------------------------------------------------------------------------------
43451: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43452:
43453: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43454: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43455:
43456: IF xla_accounting_cache_pkg.GetValueChar
43457: (p_source_code => 'LEDGER_CATEGORY_CODE'
43458: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
43461: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
43462: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
43463: )
43464: THEN
43465: xla_ae_lines_pkg.BflowUpgEntry
43466: (p_business_method_code => l_bflow_method_code
43467: ,p_business_class_code => l_bflow_class_code
43468: ,p_balance_type => l_balance_type_code);
43469: ELSE
43475: -- call analytical criteria
43476: --
43477:
43478:
43479: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
43480: xla_ae_lines_pkg.SetAnalyticalCriteria(
43481: p_analytical_criterion_name => 'Check Id'
43482: , p_analytical_criterion_owner => 'S'
43483: , p_analytical_criterion_code => 'CHECK_ID'
43476: --
43477:
43478:
43479: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
43480: xla_ae_lines_pkg.SetAnalyticalCriteria(
43481: p_analytical_criterion_name => 'Check Id'
43482: , p_analytical_criterion_owner => 'S'
43483: , p_analytical_criterion_code => 'CHECK_ID'
43484: , p_amb_context_code => 'DEFAULT'
43519: , x_value_type_code => l_adr_value_type_code
43520: , p_side => 'NA'
43521: );
43522:
43523: xla_ae_lines_pkg.set_ccid(
43524: p_code_combination_id => l_ccid
43525: , p_value_type_code => l_adr_value_type_code
43526: , p_transaction_coa_id => l_adr_transaction_coa_id
43527: , p_accounting_coa_id => l_adr_accounting_coa_id
43555: xla_accounting_err_pkg.build_message
43556: (p_appli_s_name => 'XLA'
43557: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
43558: ,p_token_1 => 'LINE_NUMBER'
43559: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
43560: ,p_token_2 => 'LINE_TYPE_NAME'
43561: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
43562: l_component_type
43563: ,l_component_code
43591: --
43592: --
43593: ------------------------------------------------------------------------------------------------
43594: -- 4219869 Business Flow
43595: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
43596: -- Prior Entry. Currently, the following code is always generated.
43597: ------------------------------------------------------------------------------------------------
43598: XLA_AE_LINES_PKG.ValidateCurrentLine;
43599:
43594: -- 4219869 Business Flow
43595: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
43596: -- Prior Entry. Currently, the following code is always generated.
43597: ------------------------------------------------------------------------------------------------
43598: XLA_AE_LINES_PKG.ValidateCurrentLine;
43599:
43600: ------------------------------------------------------------------------------------
43601: -- 4219869 Business Flow
43602: -- Populated credit and debit amounts -- Need to generate this within IF
43600: ------------------------------------------------------------------------------------
43601: -- 4219869 Business Flow
43602: -- Populated credit and debit amounts -- Need to generate this within IF
43603: ------------------------------------------------------------------------------------
43604: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
43605:
43606: ----------------------------------------------------------------------------------
43607: -- 4219869 Business Flow
43608: -- Update journal entry status -- Need to generate this within IF
43632: -- To allow MPA report to determine if it should generate report process
43633: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
43634: ------------------------------------------------------------------------------------------
43635:
43636: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
43637: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
43638: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
43639: -- call ADRs
43640: -- Bug 4922099
43633: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
43634: ------------------------------------------------------------------------------------------
43635:
43636: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
43637: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
43638: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
43639: -- call ADRs
43640: -- Bug 4922099
43641: --
43657: , x_value_type_code => l_adr_value_type_code
43658: , p_side => 'NA'
43659: );
43660:
43661: xla_ae_lines_pkg.set_ccid(
43662: p_code_combination_id => l_ccid
43663: , p_value_type_code => l_adr_value_type_code
43664: , p_transaction_coa_id => l_adr_transaction_coa_id
43665: , p_accounting_coa_id => l_adr_accounting_coa_id
43680:
43681: --
43682: -- Update the line information that should be overwritten
43683: --
43684: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
43685: p_header_num => 1);
43686: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
43687:
43688: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43682: -- Update the line information that should be overwritten
43683: --
43684: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
43685: p_header_num => 1);
43686: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
43687:
43688: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43689:
43690: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
43684: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
43685: p_header_num => 1);
43686: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
43687:
43688: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43689:
43690: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
43691: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
43692: END IF;
43687:
43688: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43689:
43690: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
43691: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
43692: END IF;
43693:
43694: --
43695: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
43694: --
43695: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
43696: --
43697: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
43698: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
43699: ELSE
43700: ---------------------------------------------------------------------------------------------------
43701: -- 4262811a Switch Sign
43702: ---------------------------------------------------------------------------------------------------
43699: ELSE
43700: ---------------------------------------------------------------------------------------------------
43701: -- 4262811a Switch Sign
43702: ---------------------------------------------------------------------------------------------------
43703: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43704: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43700: ---------------------------------------------------------------------------------------------------
43701: -- 4262811a Switch Sign
43702: ---------------------------------------------------------------------------------------------------
43703: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43704: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43708: -- 5132302
43701: -- 4262811a Switch Sign
43702: ---------------------------------------------------------------------------------------------------
43703: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43704: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43708: -- 5132302
43709: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43702: ---------------------------------------------------------------------------------------------------
43703: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43704: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43708: -- 5132302
43709: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43703: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43704: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43708: -- 5132302
43709: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43711:
43705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43708: -- 5132302
43709: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43711:
43712: END IF;
43713:
43706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43708: -- 5132302
43709: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43711:
43712: END IF;
43713:
43714: -- 4955764
43711:
43712: END IF;
43713:
43714: -- 4955764
43715: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43716: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
43717:
43718:
43719: XLA_AE_LINES_PKG.ValidateCurrentLine;
43715: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43716: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
43717:
43718:
43719: XLA_AE_LINES_PKG.ValidateCurrentLine;
43720: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
43721:
43722: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
43723: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
43716: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
43717:
43718:
43719: XLA_AE_LINES_PKG.ValidateCurrentLine;
43720: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
43721:
43722: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
43723: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
43724: ,p_balance_type_code => l_balance_type_code);
43855: --
43856: -- bulk performance
43857: --
43858: l_balance_type_code VARCHAR2(1);
43859: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
43860: l_log_module VARCHAR2(240);
43861:
43862: --
43863: -- Upgrade strategy
43925: ') = 'N'
43926: THEN
43927:
43928: --
43929: XLA_AE_LINES_PKG.SetNewLine;
43930:
43931: p_balance_type_code := l_balance_type_code;
43932: -- set the flag so later we will know whether the gain loss line needs to be created
43933:
43937:
43938: --
43939: -- bulk performance
43940: --
43941: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
43942: p_header_num => 0); -- 4262811
43943: --
43944: -- set accounting line options
43945: --
43942: p_header_num => 0); -- 4262811
43943: --
43944: -- set accounting line options
43945: --
43946: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
43947: p_natural_side_code => 'C'
43948: , p_gain_or_loss_flag => 'N'
43949: , p_gl_transfer_mode_code => 'S'
43950: , p_acct_entry_type_code => 'A'
43956: --
43957: --
43958: -- set accounting line type info
43959: --
43960: xla_ae_lines_pkg.SetAcctLineType
43961: (p_component_type => l_component_type
43962: ,p_event_type_code => l_event_type_code
43963: ,p_line_definition_owner_code => l_line_definition_owner_code
43964: ,p_line_definition_code => l_line_definition_code
43970: ,p_event_class_code => l_event_class_code);
43971: --
43972: -- set accounting class
43973: --
43974: xla_ae_lines_pkg.SetAcctClass(
43975: p_accounting_class_code => 'MISC_CASH'
43976: , p_ae_header_id => l_ae_header_id
43977: );
43978:
43978:
43979: --
43980: -- set rounding class
43981: --
43982: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
43983: 'RECEIVABLE';
43984:
43985: --
43986: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43982: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
43983: 'RECEIVABLE';
43984:
43985: --
43986: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43987: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43988: --
43989: -- bulk performance
43990: --
43983: 'RECEIVABLE';
43984:
43985: --
43986: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43987: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43988: --
43989: -- bulk performance
43990: --
43991: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43987: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43988: --
43989: -- bulk performance
43990: --
43991: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43992:
43993: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43994: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43995:
43989: -- bulk performance
43990: --
43991: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43992:
43993: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43994: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43995:
43996: -- 4955764
43997: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43993: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43994: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43995:
43996: -- 4955764
43997: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43998: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
43999:
44000: -- 4458381 Public Sector Enh
44001:
44021: l_rec_acct_attrs.array_char_value(7) := p_source_35;
44022: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
44023: l_rec_acct_attrs.array_num_value(8) := p_source_36;
44024:
44025: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
44026: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
44027:
44028: ---------------------------------------------------------------------------------------------------------------
44029: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44022: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
44023: l_rec_acct_attrs.array_num_value(8) := p_source_36;
44024:
44025: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
44026: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
44027:
44028: ---------------------------------------------------------------------------------------------------------------
44029: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44030: ---------------------------------------------------------------------------------------------------------------
44025: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
44026: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
44027:
44028: ---------------------------------------------------------------------------------------------------------------
44029: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44030: ---------------------------------------------------------------------------------------------------------------
44031: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44032:
44033: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44027:
44028: ---------------------------------------------------------------------------------------------------------------
44029: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44030: ---------------------------------------------------------------------------------------------------------------
44031: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44032:
44033: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44034: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44035:
44029: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44030: ---------------------------------------------------------------------------------------------------------------
44031: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44032:
44033: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44034: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44035:
44036: IF xla_accounting_cache_pkg.GetValueChar
44037: (p_source_code => 'LEDGER_CATEGORY_CODE'
44030: ---------------------------------------------------------------------------------------------------------------
44031: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44032:
44033: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44034: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44035:
44036: IF xla_accounting_cache_pkg.GetValueChar
44037: (p_source_code => 'LEDGER_CATEGORY_CODE'
44038: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
44041: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
44042: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
44043: )
44044: THEN
44045: xla_ae_lines_pkg.BflowUpgEntry
44046: (p_business_method_code => l_bflow_method_code
44047: ,p_business_class_code => l_bflow_class_code
44048: ,p_balance_type => l_balance_type_code);
44049: ELSE
44055: -- call analytical criteria
44056: --
44057:
44058:
44059: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
44060: xla_ae_lines_pkg.SetAnalyticalCriteria(
44061: p_analytical_criterion_name => 'Check Id'
44062: , p_analytical_criterion_owner => 'S'
44063: , p_analytical_criterion_code => 'CHECK_ID'
44056: --
44057:
44058:
44059: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
44060: xla_ae_lines_pkg.SetAnalyticalCriteria(
44061: p_analytical_criterion_name => 'Check Id'
44062: , p_analytical_criterion_owner => 'S'
44063: , p_analytical_criterion_code => 'CHECK_ID'
44064: , p_amb_context_code => 'DEFAULT'
44073: ;
44074: --
44075:
44076:
44077: xla_ae_lines_pkg.g_rec_lines.array_anc_id_2(xla_ae_lines_pkg.g_LineNumber) :=
44078: xla_ae_lines_pkg.SetAnalyticalCriteria(
44079: p_analytical_criterion_name => 'Miscellaneous Cash Activity'
44080: , p_analytical_criterion_owner => 'S'
44081: , p_analytical_criterion_code => 'MISCELLANEOUS_CASH_ACTIVITY'
44074: --
44075:
44076:
44077: xla_ae_lines_pkg.g_rec_lines.array_anc_id_2(xla_ae_lines_pkg.g_LineNumber) :=
44078: xla_ae_lines_pkg.SetAnalyticalCriteria(
44079: p_analytical_criterion_name => 'Miscellaneous Cash Activity'
44080: , p_analytical_criterion_owner => 'S'
44081: , p_analytical_criterion_code => 'MISCELLANEOUS_CASH_ACTIVITY'
44082: , p_amb_context_code => 'DEFAULT'
44117: , x_value_type_code => l_adr_value_type_code
44118: , p_side => 'NA'
44119: );
44120:
44121: xla_ae_lines_pkg.set_ccid(
44122: p_code_combination_id => l_ccid
44123: , p_value_type_code => l_adr_value_type_code
44124: , p_transaction_coa_id => l_adr_transaction_coa_id
44125: , p_accounting_coa_id => l_adr_accounting_coa_id
44153: xla_accounting_err_pkg.build_message
44154: (p_appli_s_name => 'XLA'
44155: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
44156: ,p_token_1 => 'LINE_NUMBER'
44157: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
44158: ,p_token_2 => 'LINE_TYPE_NAME'
44159: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
44160: l_component_type
44161: ,l_component_code
44189: --
44190: --
44191: ------------------------------------------------------------------------------------------------
44192: -- 4219869 Business Flow
44193: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
44194: -- Prior Entry. Currently, the following code is always generated.
44195: ------------------------------------------------------------------------------------------------
44196: XLA_AE_LINES_PKG.ValidateCurrentLine;
44197:
44192: -- 4219869 Business Flow
44193: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
44194: -- Prior Entry. Currently, the following code is always generated.
44195: ------------------------------------------------------------------------------------------------
44196: XLA_AE_LINES_PKG.ValidateCurrentLine;
44197:
44198: ------------------------------------------------------------------------------------
44199: -- 4219869 Business Flow
44200: -- Populated credit and debit amounts -- Need to generate this within IF
44198: ------------------------------------------------------------------------------------
44199: -- 4219869 Business Flow
44200: -- Populated credit and debit amounts -- Need to generate this within IF
44201: ------------------------------------------------------------------------------------
44202: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44203:
44204: ----------------------------------------------------------------------------------
44205: -- 4219869 Business Flow
44206: -- Update journal entry status -- Need to generate this within IF
44230: -- To allow MPA report to determine if it should generate report process
44231: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
44232: ------------------------------------------------------------------------------------------
44233:
44234: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
44235: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
44236: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
44237: -- call ADRs
44238: -- Bug 4922099
44231: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
44232: ------------------------------------------------------------------------------------------
44233:
44234: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
44235: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
44236: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
44237: -- call ADRs
44238: -- Bug 4922099
44239: --
44255: , x_value_type_code => l_adr_value_type_code
44256: , p_side => 'NA'
44257: );
44258:
44259: xla_ae_lines_pkg.set_ccid(
44260: p_code_combination_id => l_ccid
44261: , p_value_type_code => l_adr_value_type_code
44262: , p_transaction_coa_id => l_adr_transaction_coa_id
44263: , p_accounting_coa_id => l_adr_accounting_coa_id
44278:
44279: --
44280: -- Update the line information that should be overwritten
44281: --
44282: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44283: p_header_num => 1);
44284: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44285:
44286: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44280: -- Update the line information that should be overwritten
44281: --
44282: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44283: p_header_num => 1);
44284: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44285:
44286: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44287:
44288: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44282: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44283: p_header_num => 1);
44284: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44285:
44286: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44287:
44288: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44289: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
44290: END IF;
44285:
44286: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44287:
44288: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44289: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
44290: END IF;
44291:
44292: --
44293: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
44292: --
44293: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
44294: --
44295: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
44296: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
44297: ELSE
44298: ---------------------------------------------------------------------------------------------------
44299: -- 4262811a Switch Sign
44300: ---------------------------------------------------------------------------------------------------
44297: ELSE
44298: ---------------------------------------------------------------------------------------------------
44299: -- 4262811a Switch Sign
44300: ---------------------------------------------------------------------------------------------------
44301: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44302: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44303: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44304: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44305: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44298: ---------------------------------------------------------------------------------------------------
44299: -- 4262811a Switch Sign
44300: ---------------------------------------------------------------------------------------------------
44301: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44302: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44303: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44304: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44305: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44306: -- 5132302
44299: -- 4262811a Switch Sign
44300: ---------------------------------------------------------------------------------------------------
44301: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44302: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44303: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44304: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44305: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44306: -- 5132302
44307: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44300: ---------------------------------------------------------------------------------------------------
44301: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44302: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44303: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44304: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44305: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44306: -- 5132302
44307: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44308: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44301: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44302: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44303: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44304: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44305: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44306: -- 5132302
44307: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44308: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44309:
44303: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44304: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44305: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44306: -- 5132302
44307: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44308: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44309:
44310: END IF;
44311:
44304: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44305: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44306: -- 5132302
44307: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44308: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44309:
44310: END IF;
44311:
44312: -- 4955764
44309:
44310: END IF;
44311:
44312: -- 4955764
44313: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44314: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44315:
44316:
44317: XLA_AE_LINES_PKG.ValidateCurrentLine;
44313: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44314: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44315:
44316:
44317: XLA_AE_LINES_PKG.ValidateCurrentLine;
44318: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44319:
44320: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
44321: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
44314: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44315:
44316:
44317: XLA_AE_LINES_PKG.ValidateCurrentLine;
44318: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44319:
44320: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
44321: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
44322: ,p_balance_type_code => l_balance_type_code);
44451: --
44452: -- bulk performance
44453: --
44454: l_balance_type_code VARCHAR2(1);
44455: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
44456: l_log_module VARCHAR2(240);
44457:
44458: --
44459: -- Upgrade strategy
44521: ') = 'N'
44522: THEN
44523:
44524: --
44525: XLA_AE_LINES_PKG.SetNewLine;
44526:
44527: p_balance_type_code := l_balance_type_code;
44528: -- set the flag so later we will know whether the gain loss line needs to be created
44529:
44533:
44534: --
44535: -- bulk performance
44536: --
44537: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
44538: p_header_num => 0); -- 4262811
44539: --
44540: -- set accounting line options
44541: --
44538: p_header_num => 0); -- 4262811
44539: --
44540: -- set accounting line options
44541: --
44542: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
44543: p_natural_side_code => 'C'
44544: , p_gain_or_loss_flag => 'N'
44545: , p_gl_transfer_mode_code => 'S'
44546: , p_acct_entry_type_code => 'A'
44552: --
44553: --
44554: -- set accounting line type info
44555: --
44556: xla_ae_lines_pkg.SetAcctLineType
44557: (p_component_type => l_component_type
44558: ,p_event_type_code => l_event_type_code
44559: ,p_line_definition_owner_code => l_line_definition_owner_code
44560: ,p_line_definition_code => l_line_definition_code
44566: ,p_event_class_code => l_event_class_code);
44567: --
44568: -- set accounting class
44569: --
44570: xla_ae_lines_pkg.SetAcctClass(
44571: p_accounting_class_code => 'REMITTANCE'
44572: , p_ae_header_id => l_ae_header_id
44573: );
44574:
44574:
44575: --
44576: -- set rounding class
44577: --
44578: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
44579: 'RECEIVABLE';
44580:
44581: --
44582: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44578: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
44579: 'RECEIVABLE';
44580:
44581: --
44582: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44583: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44584: --
44585: -- bulk performance
44586: --
44579: 'RECEIVABLE';
44580:
44581: --
44582: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44583: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44584: --
44585: -- bulk performance
44586: --
44587: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44583: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44584: --
44585: -- bulk performance
44586: --
44587: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44588:
44589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
44590: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
44591:
44585: -- bulk performance
44586: --
44587: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44588:
44589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
44590: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
44591:
44592: -- 4955764
44593: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
44590: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
44591:
44592: -- 4955764
44593: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44594: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
44595:
44596: -- 4458381 Public Sector Enh
44597:
44617: l_rec_acct_attrs.array_char_value(7) := p_source_35;
44618: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
44619: l_rec_acct_attrs.array_num_value(8) := p_source_36;
44620:
44621: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
44622: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
44623:
44624: ---------------------------------------------------------------------------------------------------------------
44625: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44618: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
44619: l_rec_acct_attrs.array_num_value(8) := p_source_36;
44620:
44621: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
44622: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
44623:
44624: ---------------------------------------------------------------------------------------------------------------
44625: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44626: ---------------------------------------------------------------------------------------------------------------
44621: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
44622: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
44623:
44624: ---------------------------------------------------------------------------------------------------------------
44625: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44626: ---------------------------------------------------------------------------------------------------------------
44627: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44628:
44629: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44623:
44624: ---------------------------------------------------------------------------------------------------------------
44625: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44626: ---------------------------------------------------------------------------------------------------------------
44627: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44628:
44629: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44630: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44631:
44625: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44626: ---------------------------------------------------------------------------------------------------------------
44627: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44628:
44629: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44630: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44631:
44632: IF xla_accounting_cache_pkg.GetValueChar
44633: (p_source_code => 'LEDGER_CATEGORY_CODE'
44626: ---------------------------------------------------------------------------------------------------------------
44627: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44628:
44629: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44630: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44631:
44632: IF xla_accounting_cache_pkg.GetValueChar
44633: (p_source_code => 'LEDGER_CATEGORY_CODE'
44634: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
44637: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
44638: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
44639: )
44640: THEN
44641: xla_ae_lines_pkg.BflowUpgEntry
44642: (p_business_method_code => l_bflow_method_code
44643: ,p_business_class_code => l_bflow_class_code
44644: ,p_balance_type => l_balance_type_code);
44645: ELSE
44651: -- call analytical criteria
44652: --
44653:
44654:
44655: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
44656: xla_ae_lines_pkg.SetAnalyticalCriteria(
44657: p_analytical_criterion_name => 'Check Id'
44658: , p_analytical_criterion_owner => 'S'
44659: , p_analytical_criterion_code => 'CHECK_ID'
44652: --
44653:
44654:
44655: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
44656: xla_ae_lines_pkg.SetAnalyticalCriteria(
44657: p_analytical_criterion_name => 'Check Id'
44658: , p_analytical_criterion_owner => 'S'
44659: , p_analytical_criterion_code => 'CHECK_ID'
44660: , p_amb_context_code => 'DEFAULT'
44695: , x_value_type_code => l_adr_value_type_code
44696: , p_side => 'NA'
44697: );
44698:
44699: xla_ae_lines_pkg.set_ccid(
44700: p_code_combination_id => l_ccid
44701: , p_value_type_code => l_adr_value_type_code
44702: , p_transaction_coa_id => l_adr_transaction_coa_id
44703: , p_accounting_coa_id => l_adr_accounting_coa_id
44731: xla_accounting_err_pkg.build_message
44732: (p_appli_s_name => 'XLA'
44733: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
44734: ,p_token_1 => 'LINE_NUMBER'
44735: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
44736: ,p_token_2 => 'LINE_TYPE_NAME'
44737: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
44738: l_component_type
44739: ,l_component_code
44767: --
44768: --
44769: ------------------------------------------------------------------------------------------------
44770: -- 4219869 Business Flow
44771: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
44772: -- Prior Entry. Currently, the following code is always generated.
44773: ------------------------------------------------------------------------------------------------
44774: XLA_AE_LINES_PKG.ValidateCurrentLine;
44775:
44770: -- 4219869 Business Flow
44771: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
44772: -- Prior Entry. Currently, the following code is always generated.
44773: ------------------------------------------------------------------------------------------------
44774: XLA_AE_LINES_PKG.ValidateCurrentLine;
44775:
44776: ------------------------------------------------------------------------------------
44777: -- 4219869 Business Flow
44778: -- Populated credit and debit amounts -- Need to generate this within IF
44776: ------------------------------------------------------------------------------------
44777: -- 4219869 Business Flow
44778: -- Populated credit and debit amounts -- Need to generate this within IF
44779: ------------------------------------------------------------------------------------
44780: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44781:
44782: ----------------------------------------------------------------------------------
44783: -- 4219869 Business Flow
44784: -- Update journal entry status -- Need to generate this within IF
44808: -- To allow MPA report to determine if it should generate report process
44809: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
44810: ------------------------------------------------------------------------------------------
44811:
44812: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
44813: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
44814: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
44815: -- call ADRs
44816: -- Bug 4922099
44809: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
44810: ------------------------------------------------------------------------------------------
44811:
44812: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
44813: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
44814: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
44815: -- call ADRs
44816: -- Bug 4922099
44817: --
44833: , x_value_type_code => l_adr_value_type_code
44834: , p_side => 'NA'
44835: );
44836:
44837: xla_ae_lines_pkg.set_ccid(
44838: p_code_combination_id => l_ccid
44839: , p_value_type_code => l_adr_value_type_code
44840: , p_transaction_coa_id => l_adr_transaction_coa_id
44841: , p_accounting_coa_id => l_adr_accounting_coa_id
44856:
44857: --
44858: -- Update the line information that should be overwritten
44859: --
44860: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44861: p_header_num => 1);
44862: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44863:
44864: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44858: -- Update the line information that should be overwritten
44859: --
44860: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44861: p_header_num => 1);
44862: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44863:
44864: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44865:
44866: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44860: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44861: p_header_num => 1);
44862: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44863:
44864: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44865:
44866: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44867: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
44868: END IF;
44863:
44864: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44865:
44866: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44867: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
44868: END IF;
44869:
44870: --
44871: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
44870: --
44871: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
44872: --
44873: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
44874: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
44875: ELSE
44876: ---------------------------------------------------------------------------------------------------
44877: -- 4262811a Switch Sign
44878: ---------------------------------------------------------------------------------------------------
44875: ELSE
44876: ---------------------------------------------------------------------------------------------------
44877: -- 4262811a Switch Sign
44878: ---------------------------------------------------------------------------------------------------
44879: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44880: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44881: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44882: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44883: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44876: ---------------------------------------------------------------------------------------------------
44877: -- 4262811a Switch Sign
44878: ---------------------------------------------------------------------------------------------------
44879: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44880: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44881: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44882: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44883: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44884: -- 5132302
44877: -- 4262811a Switch Sign
44878: ---------------------------------------------------------------------------------------------------
44879: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44880: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44881: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44882: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44883: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44884: -- 5132302
44885: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44878: ---------------------------------------------------------------------------------------------------
44879: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44880: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44881: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44882: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44883: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44884: -- 5132302
44885: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44886: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44879: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44880: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44881: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44882: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44883: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44884: -- 5132302
44885: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44886: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44887:
44881: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44882: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44883: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44884: -- 5132302
44885: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44886: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44887:
44888: END IF;
44889:
44882: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44883: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44884: -- 5132302
44885: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44886: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44887:
44888: END IF;
44889:
44890: -- 4955764
44887:
44888: END IF;
44889:
44890: -- 4955764
44891: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44892: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44893:
44894:
44895: XLA_AE_LINES_PKG.ValidateCurrentLine;
44891: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44892: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44893:
44894:
44895: XLA_AE_LINES_PKG.ValidateCurrentLine;
44896: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44897:
44898: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
44899: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
44892: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44893:
44894:
44895: XLA_AE_LINES_PKG.ValidateCurrentLine;
44896: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44897:
44898: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
44899: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
44900: ,p_balance_type_code => l_balance_type_code);
45029: --
45030: -- bulk performance
45031: --
45032: l_balance_type_code VARCHAR2(1);
45033: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
45034: l_log_module VARCHAR2(240);
45035:
45036: --
45037: -- Upgrade strategy
45099: ') = 'N'
45100: THEN
45101:
45102: --
45103: XLA_AE_LINES_PKG.SetNewLine;
45104:
45105: p_balance_type_code := l_balance_type_code;
45106: -- set the flag so later we will know whether the gain loss line needs to be created
45107:
45111:
45112: --
45113: -- bulk performance
45114: --
45115: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
45116: p_header_num => 0); -- 4262811
45117: --
45118: -- set accounting line options
45119: --
45116: p_header_num => 0); -- 4262811
45117: --
45118: -- set accounting line options
45119: --
45120: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
45121: p_natural_side_code => 'C'
45122: , p_gain_or_loss_flag => 'N'
45123: , p_gl_transfer_mode_code => 'S'
45124: , p_acct_entry_type_code => 'A'
45130: --
45131: --
45132: -- set accounting line type info
45133: --
45134: xla_ae_lines_pkg.SetAcctLineType
45135: (p_component_type => l_component_type
45136: ,p_event_type_code => l_event_type_code
45137: ,p_line_definition_owner_code => l_line_definition_owner_code
45138: ,p_line_definition_code => l_line_definition_code
45144: ,p_event_class_code => l_event_class_code);
45145: --
45146: -- set accounting class
45147: --
45148: xla_ae_lines_pkg.SetAcctClass(
45149: p_accounting_class_code => 'TAX'
45150: , p_ae_header_id => l_ae_header_id
45151: );
45152:
45152:
45153: --
45154: -- set rounding class
45155: --
45156: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
45157: 'RECEIVABLE';
45158:
45159: --
45160: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
45156: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
45157: 'RECEIVABLE';
45158:
45159: --
45160: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
45161: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
45162: --
45163: -- bulk performance
45164: --
45157: 'RECEIVABLE';
45158:
45159: --
45160: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
45161: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
45162: --
45163: -- bulk performance
45164: --
45165: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
45161: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
45162: --
45163: -- bulk performance
45164: --
45165: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
45166:
45167: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45168: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45169:
45163: -- bulk performance
45164: --
45165: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
45166:
45167: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45168: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45169:
45170: -- 4955764
45171: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45167: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45168: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45169:
45170: -- 4955764
45171: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45172: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
45173:
45174: -- 4458381 Public Sector Enh
45175:
45195: l_rec_acct_attrs.array_char_value(7) := p_source_35;
45196: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
45197: l_rec_acct_attrs.array_num_value(8) := p_source_36;
45198:
45199: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45200: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45201:
45202: ---------------------------------------------------------------------------------------------------------------
45203: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45196: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
45197: l_rec_acct_attrs.array_num_value(8) := p_source_36;
45198:
45199: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45200: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45201:
45202: ---------------------------------------------------------------------------------------------------------------
45203: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45204: ---------------------------------------------------------------------------------------------------------------
45199: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45200: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45201:
45202: ---------------------------------------------------------------------------------------------------------------
45203: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45204: ---------------------------------------------------------------------------------------------------------------
45205: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45206:
45207: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45201:
45202: ---------------------------------------------------------------------------------------------------------------
45203: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45204: ---------------------------------------------------------------------------------------------------------------
45205: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45206:
45207: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45208: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45209:
45203: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45204: ---------------------------------------------------------------------------------------------------------------
45205: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45206:
45207: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45208: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45209:
45210: IF xla_accounting_cache_pkg.GetValueChar
45211: (p_source_code => 'LEDGER_CATEGORY_CODE'
45204: ---------------------------------------------------------------------------------------------------------------
45205: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45206:
45207: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45208: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45209:
45210: IF xla_accounting_cache_pkg.GetValueChar
45211: (p_source_code => 'LEDGER_CATEGORY_CODE'
45212: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
45215: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
45216: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
45217: )
45218: THEN
45219: xla_ae_lines_pkg.BflowUpgEntry
45220: (p_business_method_code => l_bflow_method_code
45221: ,p_business_class_code => l_bflow_class_code
45222: ,p_balance_type => l_balance_type_code);
45223: ELSE
45229: -- call analytical criteria
45230: --
45231:
45232:
45233: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
45234: xla_ae_lines_pkg.SetAnalyticalCriteria(
45235: p_analytical_criterion_name => 'Check Id'
45236: , p_analytical_criterion_owner => 'S'
45237: , p_analytical_criterion_code => 'CHECK_ID'
45230: --
45231:
45232:
45233: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
45234: xla_ae_lines_pkg.SetAnalyticalCriteria(
45235: p_analytical_criterion_name => 'Check Id'
45236: , p_analytical_criterion_owner => 'S'
45237: , p_analytical_criterion_code => 'CHECK_ID'
45238: , p_amb_context_code => 'DEFAULT'
45273: , x_value_type_code => l_adr_value_type_code
45274: , p_side => 'NA'
45275: );
45276:
45277: xla_ae_lines_pkg.set_ccid(
45278: p_code_combination_id => l_ccid
45279: , p_value_type_code => l_adr_value_type_code
45280: , p_transaction_coa_id => l_adr_transaction_coa_id
45281: , p_accounting_coa_id => l_adr_accounting_coa_id
45309: xla_accounting_err_pkg.build_message
45310: (p_appli_s_name => 'XLA'
45311: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
45312: ,p_token_1 => 'LINE_NUMBER'
45313: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
45314: ,p_token_2 => 'LINE_TYPE_NAME'
45315: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
45316: l_component_type
45317: ,l_component_code
45345: --
45346: --
45347: ------------------------------------------------------------------------------------------------
45348: -- 4219869 Business Flow
45349: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
45350: -- Prior Entry. Currently, the following code is always generated.
45351: ------------------------------------------------------------------------------------------------
45352: XLA_AE_LINES_PKG.ValidateCurrentLine;
45353:
45348: -- 4219869 Business Flow
45349: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
45350: -- Prior Entry. Currently, the following code is always generated.
45351: ------------------------------------------------------------------------------------------------
45352: XLA_AE_LINES_PKG.ValidateCurrentLine;
45353:
45354: ------------------------------------------------------------------------------------
45355: -- 4219869 Business Flow
45356: -- Populated credit and debit amounts -- Need to generate this within IF
45354: ------------------------------------------------------------------------------------
45355: -- 4219869 Business Flow
45356: -- Populated credit and debit amounts -- Need to generate this within IF
45357: ------------------------------------------------------------------------------------
45358: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45359:
45360: ----------------------------------------------------------------------------------
45361: -- 4219869 Business Flow
45362: -- Update journal entry status -- Need to generate this within IF
45386: -- To allow MPA report to determine if it should generate report process
45387: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
45388: ------------------------------------------------------------------------------------------
45389:
45390: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
45391: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
45392: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
45393: -- call ADRs
45394: -- Bug 4922099
45387: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
45388: ------------------------------------------------------------------------------------------
45389:
45390: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
45391: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
45392: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
45393: -- call ADRs
45394: -- Bug 4922099
45395: --
45411: , x_value_type_code => l_adr_value_type_code
45412: , p_side => 'NA'
45413: );
45414:
45415: xla_ae_lines_pkg.set_ccid(
45416: p_code_combination_id => l_ccid
45417: , p_value_type_code => l_adr_value_type_code
45418: , p_transaction_coa_id => l_adr_transaction_coa_id
45419: , p_accounting_coa_id => l_adr_accounting_coa_id
45434:
45435: --
45436: -- Update the line information that should be overwritten
45437: --
45438: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
45439: p_header_num => 1);
45440: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
45441:
45442: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45436: -- Update the line information that should be overwritten
45437: --
45438: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
45439: p_header_num => 1);
45440: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
45441:
45442: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45443:
45444: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
45438: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
45439: p_header_num => 1);
45440: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
45441:
45442: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45443:
45444: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
45445: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
45446: END IF;
45441:
45442: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45443:
45444: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
45445: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
45446: END IF;
45447:
45448: --
45449: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
45448: --
45449: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
45450: --
45451: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
45452: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
45453: ELSE
45454: ---------------------------------------------------------------------------------------------------
45455: -- 4262811a Switch Sign
45456: ---------------------------------------------------------------------------------------------------
45453: ELSE
45454: ---------------------------------------------------------------------------------------------------
45455: -- 4262811a Switch Sign
45456: ---------------------------------------------------------------------------------------------------
45457: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45458: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45459: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45460: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45461: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45454: ---------------------------------------------------------------------------------------------------
45455: -- 4262811a Switch Sign
45456: ---------------------------------------------------------------------------------------------------
45457: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45458: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45459: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45460: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45461: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45462: -- 5132302
45455: -- 4262811a Switch Sign
45456: ---------------------------------------------------------------------------------------------------
45457: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45458: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45459: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45460: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45461: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45462: -- 5132302
45463: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45456: ---------------------------------------------------------------------------------------------------
45457: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45458: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45459: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45460: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45461: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45462: -- 5132302
45463: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45464: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45457: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45458: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45459: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45460: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45461: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45462: -- 5132302
45463: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45464: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45465:
45459: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45460: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45461: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45462: -- 5132302
45463: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45464: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45465:
45466: END IF;
45467:
45460: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45461: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45462: -- 5132302
45463: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45464: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45465:
45466: END IF;
45467:
45468: -- 4955764
45465:
45466: END IF;
45467:
45468: -- 4955764
45469: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45470: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45471:
45472:
45473: XLA_AE_LINES_PKG.ValidateCurrentLine;
45469: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45470: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45471:
45472:
45473: XLA_AE_LINES_PKG.ValidateCurrentLine;
45474: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45475:
45476: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
45477: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
45470: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45471:
45472:
45473: XLA_AE_LINES_PKG.ValidateCurrentLine;
45474: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45475:
45476: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
45477: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
45478: ,p_balance_type_code => l_balance_type_code);
45623: --
45624: -- bulk performance
45625: --
45626: l_balance_type_code VARCHAR2(1);
45627: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
45628: l_log_module VARCHAR2(240);
45629:
45630: --
45631: -- Upgrade strategy
45693: ') = 'N'
45694: THEN
45695:
45696: --
45697: XLA_AE_LINES_PKG.SetNewLine;
45698:
45699: p_balance_type_code := l_balance_type_code;
45700: -- set the flag so later we will know whether the gain loss line needs to be created
45701:
45705:
45706: --
45707: -- bulk performance
45708: --
45709: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
45710: p_header_num => 0); -- 4262811
45711: --
45712: -- set accounting line options
45713: --
45710: p_header_num => 0); -- 4262811
45711: --
45712: -- set accounting line options
45713: --
45714: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
45715: p_natural_side_code => 'C'
45716: , p_gain_or_loss_flag => 'N'
45717: , p_gl_transfer_mode_code => 'S'
45718: , p_acct_entry_type_code => 'A'
45724: --
45725: --
45726: -- set accounting line type info
45727: --
45728: xla_ae_lines_pkg.SetAcctLineType
45729: (p_component_type => l_component_type
45730: ,p_event_type_code => l_event_type_code
45731: ,p_line_definition_owner_code => l_line_definition_owner_code
45732: ,p_line_definition_code => l_line_definition_code
45738: ,p_event_class_code => l_event_class_code);
45739: --
45740: -- set accounting class
45741: --
45742: xla_ae_lines_pkg.SetAcctClass(
45743: p_accounting_class_code => 'ACC'
45744: , p_ae_header_id => l_ae_header_id
45745: );
45746:
45746:
45747: --
45748: -- set rounding class
45749: --
45750: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
45751: 'RECEIVABLE';
45752:
45753: --
45754: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
45750: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
45751: 'RECEIVABLE';
45752:
45753: --
45754: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
45755: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
45756: --
45757: -- bulk performance
45758: --
45751: 'RECEIVABLE';
45752:
45753: --
45754: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
45755: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
45756: --
45757: -- bulk performance
45758: --
45759: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
45755: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
45756: --
45757: -- bulk performance
45758: --
45759: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
45760:
45761: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45762: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45763:
45757: -- bulk performance
45758: --
45759: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
45760:
45761: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45762: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45763:
45764: -- 4955764
45765: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45761: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45762: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45763:
45764: -- 4955764
45765: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45766: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
45767:
45768: -- 4458381 Public Sector Enh
45769:
45805: l_rec_acct_attrs.array_num_value(15) := p_source_98;
45806: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
45807: l_rec_acct_attrs.array_char_value(16) := p_source_99;
45808:
45809: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45810: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45811:
45812: ---------------------------------------------------------------------------------------------------------------
45813: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45806: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
45807: l_rec_acct_attrs.array_char_value(16) := p_source_99;
45808:
45809: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45810: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45811:
45812: ---------------------------------------------------------------------------------------------------------------
45813: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45814: ---------------------------------------------------------------------------------------------------------------
45809: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45810: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45811:
45812: ---------------------------------------------------------------------------------------------------------------
45813: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45814: ---------------------------------------------------------------------------------------------------------------
45815: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45816:
45817: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45811:
45812: ---------------------------------------------------------------------------------------------------------------
45813: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45814: ---------------------------------------------------------------------------------------------------------------
45815: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45816:
45817: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45818: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45819:
45813: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45814: ---------------------------------------------------------------------------------------------------------------
45815: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45816:
45817: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45818: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45819:
45820: IF xla_accounting_cache_pkg.GetValueChar
45821: (p_source_code => 'LEDGER_CATEGORY_CODE'
45814: ---------------------------------------------------------------------------------------------------------------
45815: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45816:
45817: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45818: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45819:
45820: IF xla_accounting_cache_pkg.GetValueChar
45821: (p_source_code => 'LEDGER_CATEGORY_CODE'
45822: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
45825: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
45826: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
45827: )
45828: THEN
45829: xla_ae_lines_pkg.BflowUpgEntry
45830: (p_business_method_code => l_bflow_method_code
45831: ,p_business_class_code => l_bflow_class_code
45832: ,p_balance_type => l_balance_type_code);
45833: ELSE
45839: -- call analytical criteria
45840: --
45841:
45842:
45843: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
45844: xla_ae_lines_pkg.SetAnalyticalCriteria(
45845: p_analytical_criterion_name => 'Check Id'
45846: , p_analytical_criterion_owner => 'S'
45847: , p_analytical_criterion_code => 'CHECK_ID'
45840: --
45841:
45842:
45843: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
45844: xla_ae_lines_pkg.SetAnalyticalCriteria(
45845: p_analytical_criterion_name => 'Check Id'
45846: , p_analytical_criterion_owner => 'S'
45847: , p_analytical_criterion_code => 'CHECK_ID'
45848: , p_amb_context_code => 'DEFAULT'
45857: ;
45858: --
45859:
45860:
45861: xla_ae_lines_pkg.g_rec_lines.array_anc_id_2(xla_ae_lines_pkg.g_LineNumber) :=
45862: xla_ae_lines_pkg.SetAnalyticalCriteria(
45863: p_analytical_criterion_name => 'Distribution Source Type'
45864: , p_analytical_criterion_owner => 'S'
45865: , p_analytical_criterion_code => 'DISTRIBUTION_SOURCE_TYPE'
45858: --
45859:
45860:
45861: xla_ae_lines_pkg.g_rec_lines.array_anc_id_2(xla_ae_lines_pkg.g_LineNumber) :=
45862: xla_ae_lines_pkg.SetAnalyticalCriteria(
45863: p_analytical_criterion_name => 'Distribution Source Type'
45864: , p_analytical_criterion_owner => 'S'
45865: , p_analytical_criterion_code => 'DISTRIBUTION_SOURCE_TYPE'
45866: , p_amb_context_code => 'DEFAULT'
45901: , x_value_type_code => l_adr_value_type_code
45902: , p_side => 'NA'
45903: );
45904:
45905: xla_ae_lines_pkg.set_ccid(
45906: p_code_combination_id => l_ccid
45907: , p_value_type_code => l_adr_value_type_code
45908: , p_transaction_coa_id => l_adr_transaction_coa_id
45909: , p_accounting_coa_id => l_adr_accounting_coa_id
45937: xla_accounting_err_pkg.build_message
45938: (p_appli_s_name => 'XLA'
45939: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
45940: ,p_token_1 => 'LINE_NUMBER'
45941: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
45942: ,p_token_2 => 'LINE_TYPE_NAME'
45943: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
45944: l_component_type
45945: ,l_component_code
45973: --
45974: --
45975: ------------------------------------------------------------------------------------------------
45976: -- 4219869 Business Flow
45977: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
45978: -- Prior Entry. Currently, the following code is always generated.
45979: ------------------------------------------------------------------------------------------------
45980: XLA_AE_LINES_PKG.ValidateCurrentLine;
45981:
45976: -- 4219869 Business Flow
45977: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
45978: -- Prior Entry. Currently, the following code is always generated.
45979: ------------------------------------------------------------------------------------------------
45980: XLA_AE_LINES_PKG.ValidateCurrentLine;
45981:
45982: ------------------------------------------------------------------------------------
45983: -- 4219869 Business Flow
45984: -- Populated credit and debit amounts -- Need to generate this within IF
45982: ------------------------------------------------------------------------------------
45983: -- 4219869 Business Flow
45984: -- Populated credit and debit amounts -- Need to generate this within IF
45985: ------------------------------------------------------------------------------------
45986: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45987:
45988: ----------------------------------------------------------------------------------
45989: -- 4219869 Business Flow
45990: -- Update journal entry status -- Need to generate this within IF
46014: -- To allow MPA report to determine if it should generate report process
46015: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
46016: ------------------------------------------------------------------------------------------
46017:
46018: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
46019: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
46020: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
46021: -- call ADRs
46022: -- Bug 4922099
46015: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
46016: ------------------------------------------------------------------------------------------
46017:
46018: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
46019: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
46020: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
46021: -- call ADRs
46022: -- Bug 4922099
46023: --
46039: , x_value_type_code => l_adr_value_type_code
46040: , p_side => 'NA'
46041: );
46042:
46043: xla_ae_lines_pkg.set_ccid(
46044: p_code_combination_id => l_ccid
46045: , p_value_type_code => l_adr_value_type_code
46046: , p_transaction_coa_id => l_adr_transaction_coa_id
46047: , p_accounting_coa_id => l_adr_accounting_coa_id
46062:
46063: --
46064: -- Update the line information that should be overwritten
46065: --
46066: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46067: p_header_num => 1);
46068: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46069:
46070: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46064: -- Update the line information that should be overwritten
46065: --
46066: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46067: p_header_num => 1);
46068: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46069:
46070: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46071:
46072: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46066: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46067: p_header_num => 1);
46068: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46069:
46070: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46071:
46072: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46073: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
46074: END IF;
46069:
46070: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46071:
46072: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46073: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
46074: END IF;
46075:
46076: --
46077: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
46076: --
46077: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
46078: --
46079: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
46080: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
46081: ELSE
46082: ---------------------------------------------------------------------------------------------------
46083: -- 4262811a Switch Sign
46084: ---------------------------------------------------------------------------------------------------
46081: ELSE
46082: ---------------------------------------------------------------------------------------------------
46083: -- 4262811a Switch Sign
46084: ---------------------------------------------------------------------------------------------------
46085: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46086: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46087: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46088: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46089: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46082: ---------------------------------------------------------------------------------------------------
46083: -- 4262811a Switch Sign
46084: ---------------------------------------------------------------------------------------------------
46085: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46086: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46087: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46088: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46089: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46090: -- 5132302
46083: -- 4262811a Switch Sign
46084: ---------------------------------------------------------------------------------------------------
46085: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46086: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46087: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46088: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46089: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46090: -- 5132302
46091: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46084: ---------------------------------------------------------------------------------------------------
46085: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46086: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46087: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46088: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46089: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46090: -- 5132302
46091: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46092: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46085: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46086: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46087: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46088: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46089: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46090: -- 5132302
46091: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46092: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46093:
46087: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46088: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46089: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46090: -- 5132302
46091: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46092: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46093:
46094: END IF;
46095:
46088: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46089: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46090: -- 5132302
46091: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46092: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46093:
46094: END IF;
46095:
46096: -- 4955764
46093:
46094: END IF;
46095:
46096: -- 4955764
46097: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46098: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46099:
46100:
46101: XLA_AE_LINES_PKG.ValidateCurrentLine;
46097: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46098: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46099:
46100:
46101: XLA_AE_LINES_PKG.ValidateCurrentLine;
46102: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46103:
46104: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
46105: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
46098: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46099:
46100:
46101: XLA_AE_LINES_PKG.ValidateCurrentLine;
46102: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46103:
46104: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
46105: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
46106: ,p_balance_type_code => l_balance_type_code);
46251: --
46252: -- bulk performance
46253: --
46254: l_balance_type_code VARCHAR2(1);
46255: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
46256: l_log_module VARCHAR2(240);
46257:
46258: --
46259: -- Upgrade strategy
46321: ') = 'N'
46322: THEN
46323:
46324: --
46325: XLA_AE_LINES_PKG.SetNewLine;
46326:
46327: p_balance_type_code := l_balance_type_code;
46328: -- set the flag so later we will know whether the gain loss line needs to be created
46329:
46333:
46334: --
46335: -- bulk performance
46336: --
46337: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
46338: p_header_num => 0); -- 4262811
46339: --
46340: -- set accounting line options
46341: --
46338: p_header_num => 0); -- 4262811
46339: --
46340: -- set accounting line options
46341: --
46342: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
46343: p_natural_side_code => 'C'
46344: , p_gain_or_loss_flag => 'N'
46345: , p_gl_transfer_mode_code => 'S'
46346: , p_acct_entry_type_code => 'A'
46352: --
46353: --
46354: -- set accounting line type info
46355: --
46356: xla_ae_lines_pkg.SetAcctLineType
46357: (p_component_type => l_component_type
46358: ,p_event_type_code => l_event_type_code
46359: ,p_line_definition_owner_code => l_line_definition_owner_code
46360: ,p_line_definition_code => l_line_definition_code
46366: ,p_event_class_code => l_event_class_code);
46367: --
46368: -- set accounting class
46369: --
46370: xla_ae_lines_pkg.SetAcctClass(
46371: p_accounting_class_code => 'BANK_CHG'
46372: , p_ae_header_id => l_ae_header_id
46373: );
46374:
46374:
46375: --
46376: -- set rounding class
46377: --
46378: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
46379: 'RECEIVABLE';
46380:
46381: --
46382: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
46378: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
46379: 'RECEIVABLE';
46380:
46381: --
46382: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
46383: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
46384: --
46385: -- bulk performance
46386: --
46379: 'RECEIVABLE';
46380:
46381: --
46382: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
46383: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
46384: --
46385: -- bulk performance
46386: --
46387: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
46383: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
46384: --
46385: -- bulk performance
46386: --
46387: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
46388:
46389: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
46390: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
46391:
46385: -- bulk performance
46386: --
46387: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
46388:
46389: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
46390: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
46391:
46392: -- 4955764
46393: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46389: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
46390: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
46391:
46392: -- 4955764
46393: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46394: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
46395:
46396: -- 4458381 Public Sector Enh
46397:
46433: l_rec_acct_attrs.array_num_value(15) := p_source_98;
46434: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
46435: l_rec_acct_attrs.array_char_value(16) := p_source_99;
46436:
46437: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
46438: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
46439:
46440: ---------------------------------------------------------------------------------------------------------------
46441: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46434: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
46435: l_rec_acct_attrs.array_char_value(16) := p_source_99;
46436:
46437: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
46438: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
46439:
46440: ---------------------------------------------------------------------------------------------------------------
46441: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46442: ---------------------------------------------------------------------------------------------------------------
46437: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
46438: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
46439:
46440: ---------------------------------------------------------------------------------------------------------------
46441: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46442: ---------------------------------------------------------------------------------------------------------------
46443: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46444:
46445: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46439:
46440: ---------------------------------------------------------------------------------------------------------------
46441: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46442: ---------------------------------------------------------------------------------------------------------------
46443: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46444:
46445: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46446: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46447:
46441: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46442: ---------------------------------------------------------------------------------------------------------------
46443: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46444:
46445: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46446: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46447:
46448: IF xla_accounting_cache_pkg.GetValueChar
46449: (p_source_code => 'LEDGER_CATEGORY_CODE'
46442: ---------------------------------------------------------------------------------------------------------------
46443: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46444:
46445: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46446: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46447:
46448: IF xla_accounting_cache_pkg.GetValueChar
46449: (p_source_code => 'LEDGER_CATEGORY_CODE'
46450: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
46453: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
46454: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
46455: )
46456: THEN
46457: xla_ae_lines_pkg.BflowUpgEntry
46458: (p_business_method_code => l_bflow_method_code
46459: ,p_business_class_code => l_bflow_class_code
46460: ,p_balance_type => l_balance_type_code);
46461: ELSE
46467: -- call analytical criteria
46468: --
46469:
46470:
46471: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
46472: xla_ae_lines_pkg.SetAnalyticalCriteria(
46473: p_analytical_criterion_name => 'Check Id'
46474: , p_analytical_criterion_owner => 'S'
46475: , p_analytical_criterion_code => 'CHECK_ID'
46468: --
46469:
46470:
46471: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
46472: xla_ae_lines_pkg.SetAnalyticalCriteria(
46473: p_analytical_criterion_name => 'Check Id'
46474: , p_analytical_criterion_owner => 'S'
46475: , p_analytical_criterion_code => 'CHECK_ID'
46476: , p_amb_context_code => 'DEFAULT'
46485: ;
46486: --
46487:
46488:
46489: xla_ae_lines_pkg.g_rec_lines.array_anc_id_2(xla_ae_lines_pkg.g_LineNumber) :=
46490: xla_ae_lines_pkg.SetAnalyticalCriteria(
46491: p_analytical_criterion_name => 'Distribution Source Type'
46492: , p_analytical_criterion_owner => 'S'
46493: , p_analytical_criterion_code => 'DISTRIBUTION_SOURCE_TYPE'
46486: --
46487:
46488:
46489: xla_ae_lines_pkg.g_rec_lines.array_anc_id_2(xla_ae_lines_pkg.g_LineNumber) :=
46490: xla_ae_lines_pkg.SetAnalyticalCriteria(
46491: p_analytical_criterion_name => 'Distribution Source Type'
46492: , p_analytical_criterion_owner => 'S'
46493: , p_analytical_criterion_code => 'DISTRIBUTION_SOURCE_TYPE'
46494: , p_amb_context_code => 'DEFAULT'
46529: , x_value_type_code => l_adr_value_type_code
46530: , p_side => 'NA'
46531: );
46532:
46533: xla_ae_lines_pkg.set_ccid(
46534: p_code_combination_id => l_ccid
46535: , p_value_type_code => l_adr_value_type_code
46536: , p_transaction_coa_id => l_adr_transaction_coa_id
46537: , p_accounting_coa_id => l_adr_accounting_coa_id
46565: xla_accounting_err_pkg.build_message
46566: (p_appli_s_name => 'XLA'
46567: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
46568: ,p_token_1 => 'LINE_NUMBER'
46569: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
46570: ,p_token_2 => 'LINE_TYPE_NAME'
46571: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
46572: l_component_type
46573: ,l_component_code
46601: --
46602: --
46603: ------------------------------------------------------------------------------------------------
46604: -- 4219869 Business Flow
46605: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
46606: -- Prior Entry. Currently, the following code is always generated.
46607: ------------------------------------------------------------------------------------------------
46608: XLA_AE_LINES_PKG.ValidateCurrentLine;
46609:
46604: -- 4219869 Business Flow
46605: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
46606: -- Prior Entry. Currently, the following code is always generated.
46607: ------------------------------------------------------------------------------------------------
46608: XLA_AE_LINES_PKG.ValidateCurrentLine;
46609:
46610: ------------------------------------------------------------------------------------
46611: -- 4219869 Business Flow
46612: -- Populated credit and debit amounts -- Need to generate this within IF
46610: ------------------------------------------------------------------------------------
46611: -- 4219869 Business Flow
46612: -- Populated credit and debit amounts -- Need to generate this within IF
46613: ------------------------------------------------------------------------------------
46614: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46615:
46616: ----------------------------------------------------------------------------------
46617: -- 4219869 Business Flow
46618: -- Update journal entry status -- Need to generate this within IF
46642: -- To allow MPA report to determine if it should generate report process
46643: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
46644: ------------------------------------------------------------------------------------------
46645:
46646: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
46647: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
46648: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
46649: -- call ADRs
46650: -- Bug 4922099
46643: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
46644: ------------------------------------------------------------------------------------------
46645:
46646: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
46647: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
46648: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
46649: -- call ADRs
46650: -- Bug 4922099
46651: --
46667: , x_value_type_code => l_adr_value_type_code
46668: , p_side => 'NA'
46669: );
46670:
46671: xla_ae_lines_pkg.set_ccid(
46672: p_code_combination_id => l_ccid
46673: , p_value_type_code => l_adr_value_type_code
46674: , p_transaction_coa_id => l_adr_transaction_coa_id
46675: , p_accounting_coa_id => l_adr_accounting_coa_id
46690:
46691: --
46692: -- Update the line information that should be overwritten
46693: --
46694: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46695: p_header_num => 1);
46696: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46697:
46698: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46692: -- Update the line information that should be overwritten
46693: --
46694: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46695: p_header_num => 1);
46696: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46697:
46698: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46699:
46700: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46694: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46695: p_header_num => 1);
46696: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46697:
46698: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46699:
46700: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46701: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
46702: END IF;
46697:
46698: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46699:
46700: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46701: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
46702: END IF;
46703:
46704: --
46705: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
46704: --
46705: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
46706: --
46707: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
46708: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
46709: ELSE
46710: ---------------------------------------------------------------------------------------------------
46711: -- 4262811a Switch Sign
46712: ---------------------------------------------------------------------------------------------------
46709: ELSE
46710: ---------------------------------------------------------------------------------------------------
46711: -- 4262811a Switch Sign
46712: ---------------------------------------------------------------------------------------------------
46713: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46714: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46715: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46716: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46717: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46710: ---------------------------------------------------------------------------------------------------
46711: -- 4262811a Switch Sign
46712: ---------------------------------------------------------------------------------------------------
46713: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46714: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46715: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46716: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46717: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46718: -- 5132302
46711: -- 4262811a Switch Sign
46712: ---------------------------------------------------------------------------------------------------
46713: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46714: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46715: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46716: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46717: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46718: -- 5132302
46719: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46712: ---------------------------------------------------------------------------------------------------
46713: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46714: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46715: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46716: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46717: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46718: -- 5132302
46719: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46720: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46713: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46714: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46715: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46716: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46717: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46718: -- 5132302
46719: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46720: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46721:
46715: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46716: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46717: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46718: -- 5132302
46719: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46720: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46721:
46722: END IF;
46723:
46716: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46717: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46718: -- 5132302
46719: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46720: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46721:
46722: END IF;
46723:
46724: -- 4955764
46721:
46722: END IF;
46723:
46724: -- 4955764
46725: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46726: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46727:
46728:
46729: XLA_AE_LINES_PKG.ValidateCurrentLine;
46725: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46726: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46727:
46728:
46729: XLA_AE_LINES_PKG.ValidateCurrentLine;
46730: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46731:
46732: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
46733: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
46726: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46727:
46728:
46729: XLA_AE_LINES_PKG.ValidateCurrentLine;
46730: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46731:
46732: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
46733: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
46734: ,p_balance_type_code => l_balance_type_code);
46879: --
46880: -- bulk performance
46881: --
46882: l_balance_type_code VARCHAR2(1);
46883: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
46884: l_log_module VARCHAR2(240);
46885:
46886: --
46887: -- Upgrade strategy
46949: ') = 'N'
46950: THEN
46951:
46952: --
46953: XLA_AE_LINES_PKG.SetNewLine;
46954:
46955: p_balance_type_code := l_balance_type_code;
46956: -- set the flag so later we will know whether the gain loss line needs to be created
46957:
46961:
46962: --
46963: -- bulk performance
46964: --
46965: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
46966: p_header_num => 0); -- 4262811
46967: --
46968: -- set accounting line options
46969: --
46966: p_header_num => 0); -- 4262811
46967: --
46968: -- set accounting line options
46969: --
46970: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
46971: p_natural_side_code => 'C'
46972: , p_gain_or_loss_flag => 'N'
46973: , p_gl_transfer_mode_code => 'S'
46974: , p_acct_entry_type_code => 'A'
46980: --
46981: --
46982: -- set accounting line type info
46983: --
46984: xla_ae_lines_pkg.SetAcctLineType
46985: (p_component_type => l_component_type
46986: ,p_event_type_code => l_event_type_code
46987: ,p_line_definition_owner_code => l_line_definition_owner_code
46988: ,p_line_definition_code => l_line_definition_code
46994: ,p_event_class_code => l_event_class_code);
46995: --
46996: -- set accounting class
46997: --
46998: xla_ae_lines_pkg.SetAcctClass(
46999: p_accounting_class_code => 'CASH'
47000: , p_ae_header_id => l_ae_header_id
47001: );
47002:
47002:
47003: --
47004: -- set rounding class
47005: --
47006: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
47007: 'RECEIVABLE';
47008:
47009: --
47010: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47006: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
47007: 'RECEIVABLE';
47008:
47009: --
47010: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47011: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47012: --
47013: -- bulk performance
47014: --
47007: 'RECEIVABLE';
47008:
47009: --
47010: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47011: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47012: --
47013: -- bulk performance
47014: --
47015: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47011: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47012: --
47013: -- bulk performance
47014: --
47015: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47016:
47017: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47018: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47019:
47013: -- bulk performance
47014: --
47015: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47016:
47017: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47018: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47019:
47020: -- 4955764
47021: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47017: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47018: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47019:
47020: -- 4955764
47021: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47022: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
47023:
47024: -- 4458381 Public Sector Enh
47025:
47061: l_rec_acct_attrs.array_num_value(15) := p_source_98;
47062: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
47063: l_rec_acct_attrs.array_char_value(16) := p_source_99;
47064:
47065: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47066: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47067:
47068: ---------------------------------------------------------------------------------------------------------------
47069: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47062: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
47063: l_rec_acct_attrs.array_char_value(16) := p_source_99;
47064:
47065: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47066: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47067:
47068: ---------------------------------------------------------------------------------------------------------------
47069: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47070: ---------------------------------------------------------------------------------------------------------------
47065: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47066: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47067:
47068: ---------------------------------------------------------------------------------------------------------------
47069: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47070: ---------------------------------------------------------------------------------------------------------------
47071: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47072:
47073: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47067:
47068: ---------------------------------------------------------------------------------------------------------------
47069: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47070: ---------------------------------------------------------------------------------------------------------------
47071: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47072:
47073: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47074: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47075:
47069: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47070: ---------------------------------------------------------------------------------------------------------------
47071: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47072:
47073: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47074: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47075:
47076: IF xla_accounting_cache_pkg.GetValueChar
47077: (p_source_code => 'LEDGER_CATEGORY_CODE'
47070: ---------------------------------------------------------------------------------------------------------------
47071: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47072:
47073: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47074: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47075:
47076: IF xla_accounting_cache_pkg.GetValueChar
47077: (p_source_code => 'LEDGER_CATEGORY_CODE'
47078: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
47081: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
47082: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
47083: )
47084: THEN
47085: xla_ae_lines_pkg.BflowUpgEntry
47086: (p_business_method_code => l_bflow_method_code
47087: ,p_business_class_code => l_bflow_class_code
47088: ,p_balance_type => l_balance_type_code);
47089: ELSE
47095: -- call analytical criteria
47096: --
47097:
47098:
47099: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
47100: xla_ae_lines_pkg.SetAnalyticalCriteria(
47101: p_analytical_criterion_name => 'Check Id'
47102: , p_analytical_criterion_owner => 'S'
47103: , p_analytical_criterion_code => 'CHECK_ID'
47096: --
47097:
47098:
47099: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
47100: xla_ae_lines_pkg.SetAnalyticalCriteria(
47101: p_analytical_criterion_name => 'Check Id'
47102: , p_analytical_criterion_owner => 'S'
47103: , p_analytical_criterion_code => 'CHECK_ID'
47104: , p_amb_context_code => 'DEFAULT'
47139: , x_value_type_code => l_adr_value_type_code
47140: , p_side => 'NA'
47141: );
47142:
47143: xla_ae_lines_pkg.set_ccid(
47144: p_code_combination_id => l_ccid
47145: , p_value_type_code => l_adr_value_type_code
47146: , p_transaction_coa_id => l_adr_transaction_coa_id
47147: , p_accounting_coa_id => l_adr_accounting_coa_id
47175: xla_accounting_err_pkg.build_message
47176: (p_appli_s_name => 'XLA'
47177: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
47178: ,p_token_1 => 'LINE_NUMBER'
47179: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
47180: ,p_token_2 => 'LINE_TYPE_NAME'
47181: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
47182: l_component_type
47183: ,l_component_code
47211: --
47212: --
47213: ------------------------------------------------------------------------------------------------
47214: -- 4219869 Business Flow
47215: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
47216: -- Prior Entry. Currently, the following code is always generated.
47217: ------------------------------------------------------------------------------------------------
47218: XLA_AE_LINES_PKG.ValidateCurrentLine;
47219:
47214: -- 4219869 Business Flow
47215: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
47216: -- Prior Entry. Currently, the following code is always generated.
47217: ------------------------------------------------------------------------------------------------
47218: XLA_AE_LINES_PKG.ValidateCurrentLine;
47219:
47220: ------------------------------------------------------------------------------------
47221: -- 4219869 Business Flow
47222: -- Populated credit and debit amounts -- Need to generate this within IF
47220: ------------------------------------------------------------------------------------
47221: -- 4219869 Business Flow
47222: -- Populated credit and debit amounts -- Need to generate this within IF
47223: ------------------------------------------------------------------------------------
47224: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47225:
47226: ----------------------------------------------------------------------------------
47227: -- 4219869 Business Flow
47228: -- Update journal entry status -- Need to generate this within IF
47252: -- To allow MPA report to determine if it should generate report process
47253: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
47254: ------------------------------------------------------------------------------------------
47255:
47256: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
47257: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
47258: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
47259: -- call ADRs
47260: -- Bug 4922099
47253: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
47254: ------------------------------------------------------------------------------------------
47255:
47256: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
47257: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
47258: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
47259: -- call ADRs
47260: -- Bug 4922099
47261: --
47277: , x_value_type_code => l_adr_value_type_code
47278: , p_side => 'NA'
47279: );
47280:
47281: xla_ae_lines_pkg.set_ccid(
47282: p_code_combination_id => l_ccid
47283: , p_value_type_code => l_adr_value_type_code
47284: , p_transaction_coa_id => l_adr_transaction_coa_id
47285: , p_accounting_coa_id => l_adr_accounting_coa_id
47300:
47301: --
47302: -- Update the line information that should be overwritten
47303: --
47304: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47305: p_header_num => 1);
47306: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47307:
47308: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47302: -- Update the line information that should be overwritten
47303: --
47304: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47305: p_header_num => 1);
47306: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47307:
47308: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47309:
47310: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47304: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47305: p_header_num => 1);
47306: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47307:
47308: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47309:
47310: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47311: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
47312: END IF;
47307:
47308: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47309:
47310: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47311: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
47312: END IF;
47313:
47314: --
47315: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
47314: --
47315: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
47316: --
47317: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
47318: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
47319: ELSE
47320: ---------------------------------------------------------------------------------------------------
47321: -- 4262811a Switch Sign
47322: ---------------------------------------------------------------------------------------------------
47319: ELSE
47320: ---------------------------------------------------------------------------------------------------
47321: -- 4262811a Switch Sign
47322: ---------------------------------------------------------------------------------------------------
47323: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47324: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47325: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47327: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47320: ---------------------------------------------------------------------------------------------------
47321: -- 4262811a Switch Sign
47322: ---------------------------------------------------------------------------------------------------
47323: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47324: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47325: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47327: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47328: -- 5132302
47321: -- 4262811a Switch Sign
47322: ---------------------------------------------------------------------------------------------------
47323: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47324: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47325: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47327: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47328: -- 5132302
47329: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47322: ---------------------------------------------------------------------------------------------------
47323: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47324: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47325: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47327: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47328: -- 5132302
47329: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47330: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47323: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47324: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47325: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47327: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47328: -- 5132302
47329: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47330: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47331:
47325: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47327: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47328: -- 5132302
47329: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47330: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47331:
47332: END IF;
47333:
47326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47327: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47328: -- 5132302
47329: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47330: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47331:
47332: END IF;
47333:
47334: -- 4955764
47331:
47332: END IF;
47333:
47334: -- 4955764
47335: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47336: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47337:
47338:
47339: XLA_AE_LINES_PKG.ValidateCurrentLine;
47335: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47336: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47337:
47338:
47339: XLA_AE_LINES_PKG.ValidateCurrentLine;
47340: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47341:
47342: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
47343: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
47336: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47337:
47338:
47339: XLA_AE_LINES_PKG.ValidateCurrentLine;
47340: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47341:
47342: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
47343: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
47344: ,p_balance_type_code => l_balance_type_code);
47491: --
47492: -- bulk performance
47493: --
47494: l_balance_type_code VARCHAR2(1);
47495: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
47496: l_log_module VARCHAR2(240);
47497:
47498: --
47499: -- Upgrade strategy
47563: ') = 'N'
47564: THEN
47565:
47566: --
47567: XLA_AE_LINES_PKG.SetNewLine;
47568:
47569: p_balance_type_code := l_balance_type_code;
47570: -- set the flag so later we will know whether the gain loss line needs to be created
47571:
47575:
47576: --
47577: -- bulk performance
47578: --
47579: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
47580: p_header_num => 0); -- 4262811
47581: --
47582: -- set accounting line options
47583: --
47580: p_header_num => 0); -- 4262811
47581: --
47582: -- set accounting line options
47583: --
47584: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
47585: p_natural_side_code => 'C'
47586: , p_gain_or_loss_flag => 'N'
47587: , p_gl_transfer_mode_code => 'S'
47588: , p_acct_entry_type_code => 'A'
47594: --
47595: --
47596: -- set accounting line type info
47597: --
47598: xla_ae_lines_pkg.SetAcctLineType
47599: (p_component_type => l_component_type
47600: ,p_event_type_code => l_event_type_code
47601: ,p_line_definition_owner_code => l_line_definition_owner_code
47602: ,p_line_definition_code => l_line_definition_code
47608: ,p_event_class_code => l_event_class_code);
47609: --
47610: -- set accounting class
47611: --
47612: xla_ae_lines_pkg.SetAcctClass(
47613: p_accounting_class_code => 'CLAIM'
47614: , p_ae_header_id => l_ae_header_id
47615: );
47616:
47616:
47617: --
47618: -- set rounding class
47619: --
47620: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
47621: 'RECEIVABLE';
47622:
47623: --
47624: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47620: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
47621: 'RECEIVABLE';
47622:
47623: --
47624: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47625: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47626: --
47627: -- bulk performance
47628: --
47621: 'RECEIVABLE';
47622:
47623: --
47624: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47625: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47626: --
47627: -- bulk performance
47628: --
47629: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47625: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47626: --
47627: -- bulk performance
47628: --
47629: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47630:
47631: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47632: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47633:
47627: -- bulk performance
47628: --
47629: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47630:
47631: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47632: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47633:
47634: -- 4955764
47635: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47631: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47632: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47633:
47634: -- 4955764
47635: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47636: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
47637:
47638: -- 4458381 Public Sector Enh
47639:
47675: l_rec_acct_attrs.array_num_value(15) := p_source_98;
47676: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
47677: l_rec_acct_attrs.array_char_value(16) := p_source_99;
47678:
47679: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47680: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47681:
47682: ---------------------------------------------------------------------------------------------------------------
47683: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47676: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
47677: l_rec_acct_attrs.array_char_value(16) := p_source_99;
47678:
47679: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47680: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47681:
47682: ---------------------------------------------------------------------------------------------------------------
47683: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47684: ---------------------------------------------------------------------------------------------------------------
47679: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47680: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47681:
47682: ---------------------------------------------------------------------------------------------------------------
47683: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47684: ---------------------------------------------------------------------------------------------------------------
47685: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47686:
47687: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47681:
47682: ---------------------------------------------------------------------------------------------------------------
47683: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47684: ---------------------------------------------------------------------------------------------------------------
47685: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47686:
47687: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47688: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47689:
47683: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47684: ---------------------------------------------------------------------------------------------------------------
47685: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47686:
47687: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47688: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47689:
47690: IF xla_accounting_cache_pkg.GetValueChar
47691: (p_source_code => 'LEDGER_CATEGORY_CODE'
47684: ---------------------------------------------------------------------------------------------------------------
47685: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47686:
47687: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47688: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47689:
47690: IF xla_accounting_cache_pkg.GetValueChar
47691: (p_source_code => 'LEDGER_CATEGORY_CODE'
47692: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
47695: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
47696: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
47697: )
47698: THEN
47699: xla_ae_lines_pkg.BflowUpgEntry
47700: (p_business_method_code => l_bflow_method_code
47701: ,p_business_class_code => l_bflow_class_code
47702: ,p_balance_type => l_balance_type_code);
47703: ELSE
47709: -- call analytical criteria
47710: --
47711:
47712:
47713: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
47714: xla_ae_lines_pkg.SetAnalyticalCriteria(
47715: p_analytical_criterion_name => 'Check Id'
47716: , p_analytical_criterion_owner => 'S'
47717: , p_analytical_criterion_code => 'CHECK_ID'
47710: --
47711:
47712:
47713: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
47714: xla_ae_lines_pkg.SetAnalyticalCriteria(
47715: p_analytical_criterion_name => 'Check Id'
47716: , p_analytical_criterion_owner => 'S'
47717: , p_analytical_criterion_code => 'CHECK_ID'
47718: , p_amb_context_code => 'DEFAULT'
47753: , x_value_type_code => l_adr_value_type_code
47754: , p_side => 'NA'
47755: );
47756:
47757: xla_ae_lines_pkg.set_ccid(
47758: p_code_combination_id => l_ccid
47759: , p_value_type_code => l_adr_value_type_code
47760: , p_transaction_coa_id => l_adr_transaction_coa_id
47761: , p_accounting_coa_id => l_adr_accounting_coa_id
47789: xla_accounting_err_pkg.build_message
47790: (p_appli_s_name => 'XLA'
47791: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
47792: ,p_token_1 => 'LINE_NUMBER'
47793: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
47794: ,p_token_2 => 'LINE_TYPE_NAME'
47795: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
47796: l_component_type
47797: ,l_component_code
47825: --
47826: --
47827: ------------------------------------------------------------------------------------------------
47828: -- 4219869 Business Flow
47829: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
47830: -- Prior Entry. Currently, the following code is always generated.
47831: ------------------------------------------------------------------------------------------------
47832: XLA_AE_LINES_PKG.ValidateCurrentLine;
47833:
47828: -- 4219869 Business Flow
47829: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
47830: -- Prior Entry. Currently, the following code is always generated.
47831: ------------------------------------------------------------------------------------------------
47832: XLA_AE_LINES_PKG.ValidateCurrentLine;
47833:
47834: ------------------------------------------------------------------------------------
47835: -- 4219869 Business Flow
47836: -- Populated credit and debit amounts -- Need to generate this within IF
47834: ------------------------------------------------------------------------------------
47835: -- 4219869 Business Flow
47836: -- Populated credit and debit amounts -- Need to generate this within IF
47837: ------------------------------------------------------------------------------------
47838: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47839:
47840: ----------------------------------------------------------------------------------
47841: -- 4219869 Business Flow
47842: -- Update journal entry status -- Need to generate this within IF
47866: -- To allow MPA report to determine if it should generate report process
47867: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
47868: ------------------------------------------------------------------------------------------
47869:
47870: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
47871: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
47872: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
47873: -- call ADRs
47874: -- Bug 4922099
47867: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
47868: ------------------------------------------------------------------------------------------
47869:
47870: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
47871: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
47872: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
47873: -- call ADRs
47874: -- Bug 4922099
47875: --
47891: , x_value_type_code => l_adr_value_type_code
47892: , p_side => 'NA'
47893: );
47894:
47895: xla_ae_lines_pkg.set_ccid(
47896: p_code_combination_id => l_ccid
47897: , p_value_type_code => l_adr_value_type_code
47898: , p_transaction_coa_id => l_adr_transaction_coa_id
47899: , p_accounting_coa_id => l_adr_accounting_coa_id
47914:
47915: --
47916: -- Update the line information that should be overwritten
47917: --
47918: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47919: p_header_num => 1);
47920: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47921:
47922: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47916: -- Update the line information that should be overwritten
47917: --
47918: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47919: p_header_num => 1);
47920: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47921:
47922: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47923:
47924: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47918: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47919: p_header_num => 1);
47920: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47921:
47922: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47923:
47924: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47925: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
47926: END IF;
47921:
47922: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47923:
47924: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47925: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
47926: END IF;
47927:
47928: --
47929: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
47928: --
47929: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
47930: --
47931: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
47932: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
47933: ELSE
47934: ---------------------------------------------------------------------------------------------------
47935: -- 4262811a Switch Sign
47936: ---------------------------------------------------------------------------------------------------
47933: ELSE
47934: ---------------------------------------------------------------------------------------------------
47935: -- 4262811a Switch Sign
47936: ---------------------------------------------------------------------------------------------------
47937: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47938: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47939: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47940: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47941: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47934: ---------------------------------------------------------------------------------------------------
47935: -- 4262811a Switch Sign
47936: ---------------------------------------------------------------------------------------------------
47937: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47938: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47939: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47940: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47941: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47942: -- 5132302
47935: -- 4262811a Switch Sign
47936: ---------------------------------------------------------------------------------------------------
47937: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47938: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47939: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47940: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47941: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47942: -- 5132302
47943: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47936: ---------------------------------------------------------------------------------------------------
47937: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47938: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47939: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47940: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47941: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47942: -- 5132302
47943: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47944: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47937: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47938: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47939: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47940: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47941: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47942: -- 5132302
47943: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47944: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47945:
47939: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47940: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47941: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47942: -- 5132302
47943: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47944: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47945:
47946: END IF;
47947:
47940: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47941: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47942: -- 5132302
47943: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47944: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47945:
47946: END IF;
47947:
47948: -- 4955764
47945:
47946: END IF;
47947:
47948: -- 4955764
47949: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47950: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47951:
47952:
47953: XLA_AE_LINES_PKG.ValidateCurrentLine;
47949: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47950: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47951:
47952:
47953: XLA_AE_LINES_PKG.ValidateCurrentLine;
47954: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47955:
47956: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
47957: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
47950: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47951:
47952:
47953: XLA_AE_LINES_PKG.ValidateCurrentLine;
47954: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47955:
47956: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
47957: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
47958: ,p_balance_type_code => l_balance_type_code);
48105: --
48106: -- bulk performance
48107: --
48108: l_balance_type_code VARCHAR2(1);
48109: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
48110: l_log_module VARCHAR2(240);
48111:
48112: --
48113: -- Upgrade strategy
48177: ') = 'N'
48178: THEN
48179:
48180: --
48181: XLA_AE_LINES_PKG.SetNewLine;
48182:
48183: p_balance_type_code := l_balance_type_code;
48184: -- set the flag so later we will know whether the gain loss line needs to be created
48185:
48189:
48190: --
48191: -- bulk performance
48192: --
48193: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
48194: p_header_num => 0); -- 4262811
48195: --
48196: -- set accounting line options
48197: --
48194: p_header_num => 0); -- 4262811
48195: --
48196: -- set accounting line options
48197: --
48198: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
48199: p_natural_side_code => 'C'
48200: , p_gain_or_loss_flag => 'N'
48201: , p_gl_transfer_mode_code => 'S'
48202: , p_acct_entry_type_code => 'A'
48208: --
48209: --
48210: -- set accounting line type info
48211: --
48212: xla_ae_lines_pkg.SetAcctLineType
48213: (p_component_type => l_component_type
48214: ,p_event_type_code => l_event_type_code
48215: ,p_line_definition_owner_code => l_line_definition_owner_code
48216: ,p_line_definition_code => l_line_definition_code
48222: ,p_event_class_code => l_event_class_code);
48223: --
48224: -- set accounting class
48225: --
48226: xla_ae_lines_pkg.SetAcctClass(
48227: p_accounting_class_code => 'CLAIM'
48228: , p_ae_header_id => l_ae_header_id
48229: );
48230:
48230:
48231: --
48232: -- set rounding class
48233: --
48234: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
48235: 'RECEIVABLE';
48236:
48237: --
48238: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48234: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
48235: 'RECEIVABLE';
48236:
48237: --
48238: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48239: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48240: --
48241: -- bulk performance
48242: --
48235: 'RECEIVABLE';
48236:
48237: --
48238: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48239: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48240: --
48241: -- bulk performance
48242: --
48243: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48239: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48240: --
48241: -- bulk performance
48242: --
48243: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48244:
48245: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48246: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48247:
48241: -- bulk performance
48242: --
48243: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48244:
48245: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48246: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48247:
48248: -- 4955764
48249: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48245: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48246: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48247:
48248: -- 4955764
48249: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48250: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
48251:
48252: -- 4458381 Public Sector Enh
48253:
48289: l_rec_acct_attrs.array_num_value(15) := p_source_98;
48290: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
48291: l_rec_acct_attrs.array_char_value(16) := p_source_99;
48292:
48293: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48294: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48295:
48296: ---------------------------------------------------------------------------------------------------------------
48297: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48290: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
48291: l_rec_acct_attrs.array_char_value(16) := p_source_99;
48292:
48293: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48294: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48295:
48296: ---------------------------------------------------------------------------------------------------------------
48297: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48298: ---------------------------------------------------------------------------------------------------------------
48293: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48294: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48295:
48296: ---------------------------------------------------------------------------------------------------------------
48297: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48298: ---------------------------------------------------------------------------------------------------------------
48299: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48300:
48301: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48295:
48296: ---------------------------------------------------------------------------------------------------------------
48297: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48298: ---------------------------------------------------------------------------------------------------------------
48299: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48300:
48301: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48302: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48303:
48297: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48298: ---------------------------------------------------------------------------------------------------------------
48299: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48300:
48301: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48302: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48303:
48304: IF xla_accounting_cache_pkg.GetValueChar
48305: (p_source_code => 'LEDGER_CATEGORY_CODE'
48298: ---------------------------------------------------------------------------------------------------------------
48299: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48300:
48301: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48302: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48303:
48304: IF xla_accounting_cache_pkg.GetValueChar
48305: (p_source_code => 'LEDGER_CATEGORY_CODE'
48306: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
48309: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
48310: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
48311: )
48312: THEN
48313: xla_ae_lines_pkg.BflowUpgEntry
48314: (p_business_method_code => l_bflow_method_code
48315: ,p_business_class_code => l_bflow_class_code
48316: ,p_balance_type => l_balance_type_code);
48317: ELSE
48323: -- call analytical criteria
48324: --
48325:
48326:
48327: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
48328: xla_ae_lines_pkg.SetAnalyticalCriteria(
48329: p_analytical_criterion_name => 'Check Id'
48330: , p_analytical_criterion_owner => 'S'
48331: , p_analytical_criterion_code => 'CHECK_ID'
48324: --
48325:
48326:
48327: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
48328: xla_ae_lines_pkg.SetAnalyticalCriteria(
48329: p_analytical_criterion_name => 'Check Id'
48330: , p_analytical_criterion_owner => 'S'
48331: , p_analytical_criterion_code => 'CHECK_ID'
48332: , p_amb_context_code => 'DEFAULT'
48367: , x_value_type_code => l_adr_value_type_code
48368: , p_side => 'NA'
48369: );
48370:
48371: xla_ae_lines_pkg.set_ccid(
48372: p_code_combination_id => l_ccid
48373: , p_value_type_code => l_adr_value_type_code
48374: , p_transaction_coa_id => l_adr_transaction_coa_id
48375: , p_accounting_coa_id => l_adr_accounting_coa_id
48403: xla_accounting_err_pkg.build_message
48404: (p_appli_s_name => 'XLA'
48405: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
48406: ,p_token_1 => 'LINE_NUMBER'
48407: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
48408: ,p_token_2 => 'LINE_TYPE_NAME'
48409: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
48410: l_component_type
48411: ,l_component_code
48439: --
48440: --
48441: ------------------------------------------------------------------------------------------------
48442: -- 4219869 Business Flow
48443: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
48444: -- Prior Entry. Currently, the following code is always generated.
48445: ------------------------------------------------------------------------------------------------
48446: XLA_AE_LINES_PKG.ValidateCurrentLine;
48447:
48442: -- 4219869 Business Flow
48443: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
48444: -- Prior Entry. Currently, the following code is always generated.
48445: ------------------------------------------------------------------------------------------------
48446: XLA_AE_LINES_PKG.ValidateCurrentLine;
48447:
48448: ------------------------------------------------------------------------------------
48449: -- 4219869 Business Flow
48450: -- Populated credit and debit amounts -- Need to generate this within IF
48448: ------------------------------------------------------------------------------------
48449: -- 4219869 Business Flow
48450: -- Populated credit and debit amounts -- Need to generate this within IF
48451: ------------------------------------------------------------------------------------
48452: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
48453:
48454: ----------------------------------------------------------------------------------
48455: -- 4219869 Business Flow
48456: -- Update journal entry status -- Need to generate this within IF
48480: -- To allow MPA report to determine if it should generate report process
48481: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
48482: ------------------------------------------------------------------------------------------
48483:
48484: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
48485: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
48486: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
48487: -- call ADRs
48488: -- Bug 4922099
48481: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
48482: ------------------------------------------------------------------------------------------
48483:
48484: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
48485: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
48486: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
48487: -- call ADRs
48488: -- Bug 4922099
48489: --
48505: , x_value_type_code => l_adr_value_type_code
48506: , p_side => 'NA'
48507: );
48508:
48509: xla_ae_lines_pkg.set_ccid(
48510: p_code_combination_id => l_ccid
48511: , p_value_type_code => l_adr_value_type_code
48512: , p_transaction_coa_id => l_adr_transaction_coa_id
48513: , p_accounting_coa_id => l_adr_accounting_coa_id
48528:
48529: --
48530: -- Update the line information that should be overwritten
48531: --
48532: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
48533: p_header_num => 1);
48534: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
48535:
48536: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48530: -- Update the line information that should be overwritten
48531: --
48532: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
48533: p_header_num => 1);
48534: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
48535:
48536: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48537:
48538: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
48532: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
48533: p_header_num => 1);
48534: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
48535:
48536: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48537:
48538: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
48539: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
48540: END IF;
48535:
48536: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48537:
48538: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
48539: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
48540: END IF;
48541:
48542: --
48543: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
48542: --
48543: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
48544: --
48545: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
48546: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
48547: ELSE
48548: ---------------------------------------------------------------------------------------------------
48549: -- 4262811a Switch Sign
48550: ---------------------------------------------------------------------------------------------------
48547: ELSE
48548: ---------------------------------------------------------------------------------------------------
48549: -- 4262811a Switch Sign
48550: ---------------------------------------------------------------------------------------------------
48551: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48552: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48553: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48554: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48548: ---------------------------------------------------------------------------------------------------
48549: -- 4262811a Switch Sign
48550: ---------------------------------------------------------------------------------------------------
48551: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48552: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48553: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48554: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48556: -- 5132302
48549: -- 4262811a Switch Sign
48550: ---------------------------------------------------------------------------------------------------
48551: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48552: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48553: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48554: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48556: -- 5132302
48557: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48550: ---------------------------------------------------------------------------------------------------
48551: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48552: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48553: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48554: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48556: -- 5132302
48557: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48558: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48551: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48552: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48553: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48554: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48556: -- 5132302
48557: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48558: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48559:
48553: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48554: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48556: -- 5132302
48557: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48558: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48559:
48560: END IF;
48561:
48554: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48556: -- 5132302
48557: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48558: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48559:
48560: END IF;
48561:
48562: -- 4955764
48559:
48560: END IF;
48561:
48562: -- 4955764
48563: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48564: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
48565:
48566:
48567: XLA_AE_LINES_PKG.ValidateCurrentLine;
48563: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48564: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
48565:
48566:
48567: XLA_AE_LINES_PKG.ValidateCurrentLine;
48568: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
48569:
48570: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
48571: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
48564: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
48565:
48566:
48567: XLA_AE_LINES_PKG.ValidateCurrentLine;
48568: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
48569:
48570: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
48571: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
48572: ,p_balance_type_code => l_balance_type_code);
48719: --
48720: -- bulk performance
48721: --
48722: l_balance_type_code VARCHAR2(1);
48723: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
48724: l_log_module VARCHAR2(240);
48725:
48726: --
48727: -- Upgrade strategy
48791: ') = 'N'
48792: THEN
48793:
48794: --
48795: XLA_AE_LINES_PKG.SetNewLine;
48796:
48797: p_balance_type_code := l_balance_type_code;
48798: -- set the flag so later we will know whether the gain loss line needs to be created
48799:
48803:
48804: --
48805: -- bulk performance
48806: --
48807: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
48808: p_header_num => 0); -- 4262811
48809: --
48810: -- set accounting line options
48811: --
48808: p_header_num => 0); -- 4262811
48809: --
48810: -- set accounting line options
48811: --
48812: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
48813: p_natural_side_code => 'C'
48814: , p_gain_or_loss_flag => 'N'
48815: , p_gl_transfer_mode_code => 'S'
48816: , p_acct_entry_type_code => 'A'
48822: --
48823: --
48824: -- set accounting line type info
48825: --
48826: xla_ae_lines_pkg.SetAcctLineType
48827: (p_component_type => l_component_type
48828: ,p_event_type_code => l_event_type_code
48829: ,p_line_definition_owner_code => l_line_definition_owner_code
48830: ,p_line_definition_code => l_line_definition_code
48836: ,p_event_class_code => l_event_class_code);
48837: --
48838: -- set accounting class
48839: --
48840: xla_ae_lines_pkg.SetAcctClass(
48841: p_accounting_class_code => 'CLAIM'
48842: , p_ae_header_id => l_ae_header_id
48843: );
48844:
48844:
48845: --
48846: -- set rounding class
48847: --
48848: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
48849: 'RECEIVABLE';
48850:
48851: --
48852: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48848: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
48849: 'RECEIVABLE';
48850:
48851: --
48852: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48853: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48854: --
48855: -- bulk performance
48856: --
48849: 'RECEIVABLE';
48850:
48851: --
48852: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48853: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48854: --
48855: -- bulk performance
48856: --
48857: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48853: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48854: --
48855: -- bulk performance
48856: --
48857: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48858:
48859: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48860: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48861:
48855: -- bulk performance
48856: --
48857: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48858:
48859: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48860: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48861:
48862: -- 4955764
48863: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48859: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48860: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48861:
48862: -- 4955764
48863: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48864: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
48865:
48866: -- 4458381 Public Sector Enh
48867:
48903: l_rec_acct_attrs.array_num_value(15) := p_source_98;
48904: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
48905: l_rec_acct_attrs.array_char_value(16) := p_source_99;
48906:
48907: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48908: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48909:
48910: ---------------------------------------------------------------------------------------------------------------
48911: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48904: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
48905: l_rec_acct_attrs.array_char_value(16) := p_source_99;
48906:
48907: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48908: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48909:
48910: ---------------------------------------------------------------------------------------------------------------
48911: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48912: ---------------------------------------------------------------------------------------------------------------
48907: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48908: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48909:
48910: ---------------------------------------------------------------------------------------------------------------
48911: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48912: ---------------------------------------------------------------------------------------------------------------
48913: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48914:
48915: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48909:
48910: ---------------------------------------------------------------------------------------------------------------
48911: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48912: ---------------------------------------------------------------------------------------------------------------
48913: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48914:
48915: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48916: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48917:
48911: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48912: ---------------------------------------------------------------------------------------------------------------
48913: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48914:
48915: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48916: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48917:
48918: IF xla_accounting_cache_pkg.GetValueChar
48919: (p_source_code => 'LEDGER_CATEGORY_CODE'
48912: ---------------------------------------------------------------------------------------------------------------
48913: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48914:
48915: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48916: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48917:
48918: IF xla_accounting_cache_pkg.GetValueChar
48919: (p_source_code => 'LEDGER_CATEGORY_CODE'
48920: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
48923: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
48924: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
48925: )
48926: THEN
48927: xla_ae_lines_pkg.BflowUpgEntry
48928: (p_business_method_code => l_bflow_method_code
48929: ,p_business_class_code => l_bflow_class_code
48930: ,p_balance_type => l_balance_type_code);
48931: ELSE
48937: -- call analytical criteria
48938: --
48939:
48940:
48941: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
48942: xla_ae_lines_pkg.SetAnalyticalCriteria(
48943: p_analytical_criterion_name => 'Check Id'
48944: , p_analytical_criterion_owner => 'S'
48945: , p_analytical_criterion_code => 'CHECK_ID'
48938: --
48939:
48940:
48941: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
48942: xla_ae_lines_pkg.SetAnalyticalCriteria(
48943: p_analytical_criterion_name => 'Check Id'
48944: , p_analytical_criterion_owner => 'S'
48945: , p_analytical_criterion_code => 'CHECK_ID'
48946: , p_amb_context_code => 'DEFAULT'
48981: , x_value_type_code => l_adr_value_type_code
48982: , p_side => 'NA'
48983: );
48984:
48985: xla_ae_lines_pkg.set_ccid(
48986: p_code_combination_id => l_ccid
48987: , p_value_type_code => l_adr_value_type_code
48988: , p_transaction_coa_id => l_adr_transaction_coa_id
48989: , p_accounting_coa_id => l_adr_accounting_coa_id
49017: xla_accounting_err_pkg.build_message
49018: (p_appli_s_name => 'XLA'
49019: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
49020: ,p_token_1 => 'LINE_NUMBER'
49021: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
49022: ,p_token_2 => 'LINE_TYPE_NAME'
49023: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
49024: l_component_type
49025: ,l_component_code
49053: --
49054: --
49055: ------------------------------------------------------------------------------------------------
49056: -- 4219869 Business Flow
49057: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
49058: -- Prior Entry. Currently, the following code is always generated.
49059: ------------------------------------------------------------------------------------------------
49060: XLA_AE_LINES_PKG.ValidateCurrentLine;
49061:
49056: -- 4219869 Business Flow
49057: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
49058: -- Prior Entry. Currently, the following code is always generated.
49059: ------------------------------------------------------------------------------------------------
49060: XLA_AE_LINES_PKG.ValidateCurrentLine;
49061:
49062: ------------------------------------------------------------------------------------
49063: -- 4219869 Business Flow
49064: -- Populated credit and debit amounts -- Need to generate this within IF
49062: ------------------------------------------------------------------------------------
49063: -- 4219869 Business Flow
49064: -- Populated credit and debit amounts -- Need to generate this within IF
49065: ------------------------------------------------------------------------------------
49066: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49067:
49068: ----------------------------------------------------------------------------------
49069: -- 4219869 Business Flow
49070: -- Update journal entry status -- Need to generate this within IF
49094: -- To allow MPA report to determine if it should generate report process
49095: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
49096: ------------------------------------------------------------------------------------------
49097:
49098: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
49099: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
49100: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
49101: -- call ADRs
49102: -- Bug 4922099
49095: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
49096: ------------------------------------------------------------------------------------------
49097:
49098: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
49099: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
49100: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
49101: -- call ADRs
49102: -- Bug 4922099
49103: --
49119: , x_value_type_code => l_adr_value_type_code
49120: , p_side => 'NA'
49121: );
49122:
49123: xla_ae_lines_pkg.set_ccid(
49124: p_code_combination_id => l_ccid
49125: , p_value_type_code => l_adr_value_type_code
49126: , p_transaction_coa_id => l_adr_transaction_coa_id
49127: , p_accounting_coa_id => l_adr_accounting_coa_id
49142:
49143: --
49144: -- Update the line information that should be overwritten
49145: --
49146: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49147: p_header_num => 1);
49148: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49149:
49150: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49144: -- Update the line information that should be overwritten
49145: --
49146: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49147: p_header_num => 1);
49148: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49149:
49150: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49151:
49152: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49146: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49147: p_header_num => 1);
49148: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49149:
49150: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49151:
49152: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49153: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
49154: END IF;
49149:
49150: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49151:
49152: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49153: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
49154: END IF;
49155:
49156: --
49157: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
49156: --
49157: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
49158: --
49159: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
49160: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
49161: ELSE
49162: ---------------------------------------------------------------------------------------------------
49163: -- 4262811a Switch Sign
49164: ---------------------------------------------------------------------------------------------------
49161: ELSE
49162: ---------------------------------------------------------------------------------------------------
49163: -- 4262811a Switch Sign
49164: ---------------------------------------------------------------------------------------------------
49165: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49166: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49167: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49168: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49169: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49162: ---------------------------------------------------------------------------------------------------
49163: -- 4262811a Switch Sign
49164: ---------------------------------------------------------------------------------------------------
49165: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49166: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49167: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49168: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49169: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49170: -- 5132302
49163: -- 4262811a Switch Sign
49164: ---------------------------------------------------------------------------------------------------
49165: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49166: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49167: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49168: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49169: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49170: -- 5132302
49171: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49164: ---------------------------------------------------------------------------------------------------
49165: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49166: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49167: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49168: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49169: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49170: -- 5132302
49171: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49172: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49165: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49166: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49167: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49168: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49169: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49170: -- 5132302
49171: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49172: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49173:
49167: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49168: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49169: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49170: -- 5132302
49171: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49172: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49173:
49174: END IF;
49175:
49168: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49169: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49170: -- 5132302
49171: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49172: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49173:
49174: END IF;
49175:
49176: -- 4955764
49173:
49174: END IF;
49175:
49176: -- 4955764
49177: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49178: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49179:
49180:
49181: XLA_AE_LINES_PKG.ValidateCurrentLine;
49177: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49178: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49179:
49180:
49181: XLA_AE_LINES_PKG.ValidateCurrentLine;
49182: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49183:
49184: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
49185: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
49178: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49179:
49180:
49181: XLA_AE_LINES_PKG.ValidateCurrentLine;
49182: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49183:
49184: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
49185: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
49186: ,p_balance_type_code => l_balance_type_code);
49331: --
49332: -- bulk performance
49333: --
49334: l_balance_type_code VARCHAR2(1);
49335: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
49336: l_log_module VARCHAR2(240);
49337:
49338: --
49339: -- Upgrade strategy
49401: ') = 'N'
49402: THEN
49403:
49404: --
49405: XLA_AE_LINES_PKG.SetNewLine;
49406:
49407: p_balance_type_code := l_balance_type_code;
49408: -- set the flag so later we will know whether the gain loss line needs to be created
49409:
49413:
49414: --
49415: -- bulk performance
49416: --
49417: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
49418: p_header_num => 0); -- 4262811
49419: --
49420: -- set accounting line options
49421: --
49418: p_header_num => 0); -- 4262811
49419: --
49420: -- set accounting line options
49421: --
49422: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
49423: p_natural_side_code => 'C'
49424: , p_gain_or_loss_flag => 'N'
49425: , p_gl_transfer_mode_code => 'S'
49426: , p_acct_entry_type_code => 'A'
49432: --
49433: --
49434: -- set accounting line type info
49435: --
49436: xla_ae_lines_pkg.SetAcctLineType
49437: (p_component_type => l_component_type
49438: ,p_event_type_code => l_event_type_code
49439: ,p_line_definition_owner_code => l_line_definition_owner_code
49440: ,p_line_definition_code => l_line_definition_code
49446: ,p_event_class_code => l_event_class_code);
49447: --
49448: -- set accounting class
49449: --
49450: xla_ae_lines_pkg.SetAcctClass(
49451: p_accounting_class_code => 'CONFIRMATION'
49452: , p_ae_header_id => l_ae_header_id
49453: );
49454:
49454:
49455: --
49456: -- set rounding class
49457: --
49458: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
49459: 'RECEIVABLE';
49460:
49461: --
49462: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
49458: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
49459: 'RECEIVABLE';
49460:
49461: --
49462: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
49463: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
49464: --
49465: -- bulk performance
49466: --
49459: 'RECEIVABLE';
49460:
49461: --
49462: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
49463: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
49464: --
49465: -- bulk performance
49466: --
49467: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
49463: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
49464: --
49465: -- bulk performance
49466: --
49467: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
49468:
49469: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
49470: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
49471:
49465: -- bulk performance
49466: --
49467: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
49468:
49469: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
49470: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
49471:
49472: -- 4955764
49473: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49469: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
49470: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
49471:
49472: -- 4955764
49473: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49474: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
49475:
49476: -- 4458381 Public Sector Enh
49477:
49513: l_rec_acct_attrs.array_num_value(15) := p_source_98;
49514: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
49515: l_rec_acct_attrs.array_char_value(16) := p_source_99;
49516:
49517: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
49518: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
49519:
49520: ---------------------------------------------------------------------------------------------------------------
49521: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49514: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
49515: l_rec_acct_attrs.array_char_value(16) := p_source_99;
49516:
49517: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
49518: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
49519:
49520: ---------------------------------------------------------------------------------------------------------------
49521: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49522: ---------------------------------------------------------------------------------------------------------------
49517: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
49518: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
49519:
49520: ---------------------------------------------------------------------------------------------------------------
49521: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49522: ---------------------------------------------------------------------------------------------------------------
49523: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
49524:
49525: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49519:
49520: ---------------------------------------------------------------------------------------------------------------
49521: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49522: ---------------------------------------------------------------------------------------------------------------
49523: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
49524:
49525: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49526: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49527:
49521: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49522: ---------------------------------------------------------------------------------------------------------------
49523: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
49524:
49525: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49526: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49527:
49528: IF xla_accounting_cache_pkg.GetValueChar
49529: (p_source_code => 'LEDGER_CATEGORY_CODE'
49522: ---------------------------------------------------------------------------------------------------------------
49523: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
49524:
49525: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49526: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49527:
49528: IF xla_accounting_cache_pkg.GetValueChar
49529: (p_source_code => 'LEDGER_CATEGORY_CODE'
49530: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
49533: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
49534: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
49535: )
49536: THEN
49537: xla_ae_lines_pkg.BflowUpgEntry
49538: (p_business_method_code => l_bflow_method_code
49539: ,p_business_class_code => l_bflow_class_code
49540: ,p_balance_type => l_balance_type_code);
49541: ELSE
49547: -- call analytical criteria
49548: --
49549:
49550:
49551: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
49552: xla_ae_lines_pkg.SetAnalyticalCriteria(
49553: p_analytical_criterion_name => 'Check Id'
49554: , p_analytical_criterion_owner => 'S'
49555: , p_analytical_criterion_code => 'CHECK_ID'
49548: --
49549:
49550:
49551: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
49552: xla_ae_lines_pkg.SetAnalyticalCriteria(
49553: p_analytical_criterion_name => 'Check Id'
49554: , p_analytical_criterion_owner => 'S'
49555: , p_analytical_criterion_code => 'CHECK_ID'
49556: , p_amb_context_code => 'DEFAULT'
49591: , x_value_type_code => l_adr_value_type_code
49592: , p_side => 'NA'
49593: );
49594:
49595: xla_ae_lines_pkg.set_ccid(
49596: p_code_combination_id => l_ccid
49597: , p_value_type_code => l_adr_value_type_code
49598: , p_transaction_coa_id => l_adr_transaction_coa_id
49599: , p_accounting_coa_id => l_adr_accounting_coa_id
49627: xla_accounting_err_pkg.build_message
49628: (p_appli_s_name => 'XLA'
49629: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
49630: ,p_token_1 => 'LINE_NUMBER'
49631: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
49632: ,p_token_2 => 'LINE_TYPE_NAME'
49633: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
49634: l_component_type
49635: ,l_component_code
49663: --
49664: --
49665: ------------------------------------------------------------------------------------------------
49666: -- 4219869 Business Flow
49667: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
49668: -- Prior Entry. Currently, the following code is always generated.
49669: ------------------------------------------------------------------------------------------------
49670: XLA_AE_LINES_PKG.ValidateCurrentLine;
49671:
49666: -- 4219869 Business Flow
49667: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
49668: -- Prior Entry. Currently, the following code is always generated.
49669: ------------------------------------------------------------------------------------------------
49670: XLA_AE_LINES_PKG.ValidateCurrentLine;
49671:
49672: ------------------------------------------------------------------------------------
49673: -- 4219869 Business Flow
49674: -- Populated credit and debit amounts -- Need to generate this within IF
49672: ------------------------------------------------------------------------------------
49673: -- 4219869 Business Flow
49674: -- Populated credit and debit amounts -- Need to generate this within IF
49675: ------------------------------------------------------------------------------------
49676: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49677:
49678: ----------------------------------------------------------------------------------
49679: -- 4219869 Business Flow
49680: -- Update journal entry status -- Need to generate this within IF
49704: -- To allow MPA report to determine if it should generate report process
49705: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
49706: ------------------------------------------------------------------------------------------
49707:
49708: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
49709: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
49710: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
49711: -- call ADRs
49712: -- Bug 4922099
49705: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
49706: ------------------------------------------------------------------------------------------
49707:
49708: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
49709: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
49710: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
49711: -- call ADRs
49712: -- Bug 4922099
49713: --
49729: , x_value_type_code => l_adr_value_type_code
49730: , p_side => 'NA'
49731: );
49732:
49733: xla_ae_lines_pkg.set_ccid(
49734: p_code_combination_id => l_ccid
49735: , p_value_type_code => l_adr_value_type_code
49736: , p_transaction_coa_id => l_adr_transaction_coa_id
49737: , p_accounting_coa_id => l_adr_accounting_coa_id
49752:
49753: --
49754: -- Update the line information that should be overwritten
49755: --
49756: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49757: p_header_num => 1);
49758: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49759:
49760: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49754: -- Update the line information that should be overwritten
49755: --
49756: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49757: p_header_num => 1);
49758: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49759:
49760: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49761:
49762: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49756: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49757: p_header_num => 1);
49758: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49759:
49760: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49761:
49762: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49763: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
49764: END IF;
49759:
49760: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49761:
49762: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49763: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
49764: END IF;
49765:
49766: --
49767: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
49766: --
49767: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
49768: --
49769: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
49770: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
49771: ELSE
49772: ---------------------------------------------------------------------------------------------------
49773: -- 4262811a Switch Sign
49774: ---------------------------------------------------------------------------------------------------
49771: ELSE
49772: ---------------------------------------------------------------------------------------------------
49773: -- 4262811a Switch Sign
49774: ---------------------------------------------------------------------------------------------------
49775: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49776: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49772: ---------------------------------------------------------------------------------------------------
49773: -- 4262811a Switch Sign
49774: ---------------------------------------------------------------------------------------------------
49775: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49776: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49780: -- 5132302
49773: -- 4262811a Switch Sign
49774: ---------------------------------------------------------------------------------------------------
49775: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49776: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49780: -- 5132302
49781: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49774: ---------------------------------------------------------------------------------------------------
49775: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49776: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49780: -- 5132302
49781: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49782: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49775: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49776: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49780: -- 5132302
49781: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49782: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49783:
49777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49780: -- 5132302
49781: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49782: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49783:
49784: END IF;
49785:
49778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49780: -- 5132302
49781: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49782: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49783:
49784: END IF;
49785:
49786: -- 4955764
49783:
49784: END IF;
49785:
49786: -- 4955764
49787: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49788: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49789:
49790:
49791: XLA_AE_LINES_PKG.ValidateCurrentLine;
49787: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49788: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49789:
49790:
49791: XLA_AE_LINES_PKG.ValidateCurrentLine;
49792: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49793:
49794: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
49795: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
49788: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49789:
49790:
49791: XLA_AE_LINES_PKG.ValidateCurrentLine;
49792: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49793:
49794: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
49795: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
49796: ,p_balance_type_code => l_balance_type_code);
49941: --
49942: -- bulk performance
49943: --
49944: l_balance_type_code VARCHAR2(1);
49945: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
49946: l_log_module VARCHAR2(240);
49947:
49948: --
49949: -- Upgrade strategy
50011: ') = 'N'
50012: THEN
50013:
50014: --
50015: XLA_AE_LINES_PKG.SetNewLine;
50016:
50017: p_balance_type_code := l_balance_type_code;
50018: -- set the flag so later we will know whether the gain loss line needs to be created
50019:
50023:
50024: --
50025: -- bulk performance
50026: --
50027: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
50028: p_header_num => 0); -- 4262811
50029: --
50030: -- set accounting line options
50031: --
50028: p_header_num => 0); -- 4262811
50029: --
50030: -- set accounting line options
50031: --
50032: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
50033: p_natural_side_code => 'C'
50034: , p_gain_or_loss_flag => 'N'
50035: , p_gl_transfer_mode_code => 'S'
50036: , p_acct_entry_type_code => 'A'
50042: --
50043: --
50044: -- set accounting line type info
50045: --
50046: xla_ae_lines_pkg.SetAcctLineType
50047: (p_component_type => l_component_type
50048: ,p_event_type_code => l_event_type_code
50049: ,p_line_definition_owner_code => l_line_definition_owner_code
50050: ,p_line_definition_code => l_line_definition_code
50056: ,p_event_class_code => l_event_class_code);
50057: --
50058: -- set accounting class
50059: --
50060: xla_ae_lines_pkg.SetAcctClass(
50061: p_accounting_class_code => 'ROUNDING'
50062: , p_ae_header_id => l_ae_header_id
50063: );
50064:
50064:
50065: --
50066: -- set rounding class
50067: --
50068: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
50069: 'RECEIVABLE';
50070:
50071: --
50072: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50068: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
50069: 'RECEIVABLE';
50070:
50071: --
50072: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50073: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50074: --
50075: -- bulk performance
50076: --
50069: 'RECEIVABLE';
50070:
50071: --
50072: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50073: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50074: --
50075: -- bulk performance
50076: --
50077: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50073: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50074: --
50075: -- bulk performance
50076: --
50077: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50078:
50079: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50080: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50081:
50075: -- bulk performance
50076: --
50077: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50078:
50079: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50080: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50081:
50082: -- 4955764
50083: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50079: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50080: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50081:
50082: -- 4955764
50083: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50084: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
50085:
50086: -- 4458381 Public Sector Enh
50087:
50123: l_rec_acct_attrs.array_num_value(15) := p_source_98;
50124: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
50125: l_rec_acct_attrs.array_char_value(16) := p_source_99;
50126:
50127: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50128: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50129:
50130: ---------------------------------------------------------------------------------------------------------------
50131: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50124: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
50125: l_rec_acct_attrs.array_char_value(16) := p_source_99;
50126:
50127: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50128: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50129:
50130: ---------------------------------------------------------------------------------------------------------------
50131: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50132: ---------------------------------------------------------------------------------------------------------------
50127: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50128: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50129:
50130: ---------------------------------------------------------------------------------------------------------------
50131: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50132: ---------------------------------------------------------------------------------------------------------------
50133: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50134:
50135: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50129:
50130: ---------------------------------------------------------------------------------------------------------------
50131: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50132: ---------------------------------------------------------------------------------------------------------------
50133: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50134:
50135: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50136: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50137:
50131: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50132: ---------------------------------------------------------------------------------------------------------------
50133: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50134:
50135: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50136: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50137:
50138: IF xla_accounting_cache_pkg.GetValueChar
50139: (p_source_code => 'LEDGER_CATEGORY_CODE'
50132: ---------------------------------------------------------------------------------------------------------------
50133: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50134:
50135: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50136: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50137:
50138: IF xla_accounting_cache_pkg.GetValueChar
50139: (p_source_code => 'LEDGER_CATEGORY_CODE'
50140: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
50143: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
50144: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
50145: )
50146: THEN
50147: xla_ae_lines_pkg.BflowUpgEntry
50148: (p_business_method_code => l_bflow_method_code
50149: ,p_business_class_code => l_bflow_class_code
50150: ,p_balance_type => l_balance_type_code);
50151: ELSE
50157: -- call analytical criteria
50158: --
50159:
50160:
50161: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
50162: xla_ae_lines_pkg.SetAnalyticalCriteria(
50163: p_analytical_criterion_name => 'Check Id'
50164: , p_analytical_criterion_owner => 'S'
50165: , p_analytical_criterion_code => 'CHECK_ID'
50158: --
50159:
50160:
50161: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
50162: xla_ae_lines_pkg.SetAnalyticalCriteria(
50163: p_analytical_criterion_name => 'Check Id'
50164: , p_analytical_criterion_owner => 'S'
50165: , p_analytical_criterion_code => 'CHECK_ID'
50166: , p_amb_context_code => 'DEFAULT'
50201: , x_value_type_code => l_adr_value_type_code
50202: , p_side => 'NA'
50203: );
50204:
50205: xla_ae_lines_pkg.set_ccid(
50206: p_code_combination_id => l_ccid
50207: , p_value_type_code => l_adr_value_type_code
50208: , p_transaction_coa_id => l_adr_transaction_coa_id
50209: , p_accounting_coa_id => l_adr_accounting_coa_id
50237: xla_accounting_err_pkg.build_message
50238: (p_appli_s_name => 'XLA'
50239: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
50240: ,p_token_1 => 'LINE_NUMBER'
50241: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
50242: ,p_token_2 => 'LINE_TYPE_NAME'
50243: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
50244: l_component_type
50245: ,l_component_code
50273: --
50274: --
50275: ------------------------------------------------------------------------------------------------
50276: -- 4219869 Business Flow
50277: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
50278: -- Prior Entry. Currently, the following code is always generated.
50279: ------------------------------------------------------------------------------------------------
50280: XLA_AE_LINES_PKG.ValidateCurrentLine;
50281:
50276: -- 4219869 Business Flow
50277: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
50278: -- Prior Entry. Currently, the following code is always generated.
50279: ------------------------------------------------------------------------------------------------
50280: XLA_AE_LINES_PKG.ValidateCurrentLine;
50281:
50282: ------------------------------------------------------------------------------------
50283: -- 4219869 Business Flow
50284: -- Populated credit and debit amounts -- Need to generate this within IF
50282: ------------------------------------------------------------------------------------
50283: -- 4219869 Business Flow
50284: -- Populated credit and debit amounts -- Need to generate this within IF
50285: ------------------------------------------------------------------------------------
50286: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
50287:
50288: ----------------------------------------------------------------------------------
50289: -- 4219869 Business Flow
50290: -- Update journal entry status -- Need to generate this within IF
50314: -- To allow MPA report to determine if it should generate report process
50315: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
50316: ------------------------------------------------------------------------------------------
50317:
50318: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
50319: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
50320: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
50321: -- call ADRs
50322: -- Bug 4922099
50315: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
50316: ------------------------------------------------------------------------------------------
50317:
50318: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
50319: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
50320: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
50321: -- call ADRs
50322: -- Bug 4922099
50323: --
50339: , x_value_type_code => l_adr_value_type_code
50340: , p_side => 'NA'
50341: );
50342:
50343: xla_ae_lines_pkg.set_ccid(
50344: p_code_combination_id => l_ccid
50345: , p_value_type_code => l_adr_value_type_code
50346: , p_transaction_coa_id => l_adr_transaction_coa_id
50347: , p_accounting_coa_id => l_adr_accounting_coa_id
50362:
50363: --
50364: -- Update the line information that should be overwritten
50365: --
50366: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50367: p_header_num => 1);
50368: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50369:
50370: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50364: -- Update the line information that should be overwritten
50365: --
50366: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50367: p_header_num => 1);
50368: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50369:
50370: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50371:
50372: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50366: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50367: p_header_num => 1);
50368: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50369:
50370: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50371:
50372: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50373: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
50374: END IF;
50369:
50370: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50371:
50372: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50373: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
50374: END IF;
50375:
50376: --
50377: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
50376: --
50377: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
50378: --
50379: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
50380: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
50381: ELSE
50382: ---------------------------------------------------------------------------------------------------
50383: -- 4262811a Switch Sign
50384: ---------------------------------------------------------------------------------------------------
50381: ELSE
50382: ---------------------------------------------------------------------------------------------------
50383: -- 4262811a Switch Sign
50384: ---------------------------------------------------------------------------------------------------
50385: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50386: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50387: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50388: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50389: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50382: ---------------------------------------------------------------------------------------------------
50383: -- 4262811a Switch Sign
50384: ---------------------------------------------------------------------------------------------------
50385: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50386: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50387: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50388: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50389: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50390: -- 5132302
50383: -- 4262811a Switch Sign
50384: ---------------------------------------------------------------------------------------------------
50385: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50386: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50387: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50388: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50389: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50390: -- 5132302
50391: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50384: ---------------------------------------------------------------------------------------------------
50385: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50386: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50387: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50388: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50389: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50390: -- 5132302
50391: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50392: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50385: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50386: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50387: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50388: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50389: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50390: -- 5132302
50391: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50392: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50393:
50387: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50388: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50389: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50390: -- 5132302
50391: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50392: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50393:
50394: END IF;
50395:
50388: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50389: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50390: -- 5132302
50391: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50392: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50393:
50394: END IF;
50395:
50396: -- 4955764
50393:
50394: END IF;
50395:
50396: -- 4955764
50397: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50398: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
50399:
50400:
50401: XLA_AE_LINES_PKG.ValidateCurrentLine;
50397: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50398: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
50399:
50400:
50401: XLA_AE_LINES_PKG.ValidateCurrentLine;
50402: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
50403:
50404: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
50405: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
50398: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
50399:
50400:
50401: XLA_AE_LINES_PKG.ValidateCurrentLine;
50402: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
50403:
50404: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
50405: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
50406: ,p_balance_type_code => l_balance_type_code);
50551: --
50552: -- bulk performance
50553: --
50554: l_balance_type_code VARCHAR2(1);
50555: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
50556: l_log_module VARCHAR2(240);
50557:
50558: --
50559: -- Upgrade strategy
50621: ') = 'N'
50622: THEN
50623:
50624: --
50625: XLA_AE_LINES_PKG.SetNewLine;
50626:
50627: p_balance_type_code := l_balance_type_code;
50628: -- set the flag so later we will know whether the gain loss line needs to be created
50629:
50633:
50634: --
50635: -- bulk performance
50636: --
50637: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
50638: p_header_num => 0); -- 4262811
50639: --
50640: -- set accounting line options
50641: --
50638: p_header_num => 0); -- 4262811
50639: --
50640: -- set accounting line options
50641: --
50642: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
50643: p_natural_side_code => 'C'
50644: , p_gain_or_loss_flag => 'N'
50645: , p_gl_transfer_mode_code => 'S'
50646: , p_acct_entry_type_code => 'A'
50652: --
50653: --
50654: -- set accounting line type info
50655: --
50656: xla_ae_lines_pkg.SetAcctLineType
50657: (p_component_type => l_component_type
50658: ,p_event_type_code => l_event_type_code
50659: ,p_line_definition_owner_code => l_line_definition_owner_code
50660: ,p_line_definition_code => l_line_definition_code
50666: ,p_event_class_code => l_event_class_code);
50667: --
50668: -- set accounting class
50669: --
50670: xla_ae_lines_pkg.SetAcctClass(
50671: p_accounting_class_code => 'SHORT_TERM_DEBT'
50672: , p_ae_header_id => l_ae_header_id
50673: );
50674:
50674:
50675: --
50676: -- set rounding class
50677: --
50678: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
50679: 'RECEIVABLE';
50680:
50681: --
50682: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50678: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
50679: 'RECEIVABLE';
50680:
50681: --
50682: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50683: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50684: --
50685: -- bulk performance
50686: --
50679: 'RECEIVABLE';
50680:
50681: --
50682: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50683: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50684: --
50685: -- bulk performance
50686: --
50687: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50683: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50684: --
50685: -- bulk performance
50686: --
50687: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50688:
50689: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50690: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50691:
50685: -- bulk performance
50686: --
50687: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50688:
50689: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50690: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50691:
50692: -- 4955764
50693: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50689: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50690: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50691:
50692: -- 4955764
50693: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50694: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
50695:
50696: -- 4458381 Public Sector Enh
50697:
50733: l_rec_acct_attrs.array_num_value(15) := p_source_98;
50734: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
50735: l_rec_acct_attrs.array_char_value(16) := p_source_99;
50736:
50737: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50738: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50739:
50740: ---------------------------------------------------------------------------------------------------------------
50741: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50734: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
50735: l_rec_acct_attrs.array_char_value(16) := p_source_99;
50736:
50737: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50738: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50739:
50740: ---------------------------------------------------------------------------------------------------------------
50741: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50742: ---------------------------------------------------------------------------------------------------------------
50737: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50738: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50739:
50740: ---------------------------------------------------------------------------------------------------------------
50741: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50742: ---------------------------------------------------------------------------------------------------------------
50743: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50744:
50745: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50739:
50740: ---------------------------------------------------------------------------------------------------------------
50741: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50742: ---------------------------------------------------------------------------------------------------------------
50743: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50744:
50745: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50746: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50747:
50741: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50742: ---------------------------------------------------------------------------------------------------------------
50743: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50744:
50745: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50746: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50747:
50748: IF xla_accounting_cache_pkg.GetValueChar
50749: (p_source_code => 'LEDGER_CATEGORY_CODE'
50742: ---------------------------------------------------------------------------------------------------------------
50743: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50744:
50745: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50746: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50747:
50748: IF xla_accounting_cache_pkg.GetValueChar
50749: (p_source_code => 'LEDGER_CATEGORY_CODE'
50750: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
50753: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
50754: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
50755: )
50756: THEN
50757: xla_ae_lines_pkg.BflowUpgEntry
50758: (p_business_method_code => l_bflow_method_code
50759: ,p_business_class_code => l_bflow_class_code
50760: ,p_balance_type => l_balance_type_code);
50761: ELSE
50767: -- call analytical criteria
50768: --
50769:
50770:
50771: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
50772: xla_ae_lines_pkg.SetAnalyticalCriteria(
50773: p_analytical_criterion_name => 'Check Id'
50774: , p_analytical_criterion_owner => 'S'
50775: , p_analytical_criterion_code => 'CHECK_ID'
50768: --
50769:
50770:
50771: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
50772: xla_ae_lines_pkg.SetAnalyticalCriteria(
50773: p_analytical_criterion_name => 'Check Id'
50774: , p_analytical_criterion_owner => 'S'
50775: , p_analytical_criterion_code => 'CHECK_ID'
50776: , p_amb_context_code => 'DEFAULT'
50811: , x_value_type_code => l_adr_value_type_code
50812: , p_side => 'NA'
50813: );
50814:
50815: xla_ae_lines_pkg.set_ccid(
50816: p_code_combination_id => l_ccid
50817: , p_value_type_code => l_adr_value_type_code
50818: , p_transaction_coa_id => l_adr_transaction_coa_id
50819: , p_accounting_coa_id => l_adr_accounting_coa_id
50847: xla_accounting_err_pkg.build_message
50848: (p_appli_s_name => 'XLA'
50849: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
50850: ,p_token_1 => 'LINE_NUMBER'
50851: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
50852: ,p_token_2 => 'LINE_TYPE_NAME'
50853: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
50854: l_component_type
50855: ,l_component_code
50883: --
50884: --
50885: ------------------------------------------------------------------------------------------------
50886: -- 4219869 Business Flow
50887: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
50888: -- Prior Entry. Currently, the following code is always generated.
50889: ------------------------------------------------------------------------------------------------
50890: XLA_AE_LINES_PKG.ValidateCurrentLine;
50891:
50886: -- 4219869 Business Flow
50887: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
50888: -- Prior Entry. Currently, the following code is always generated.
50889: ------------------------------------------------------------------------------------------------
50890: XLA_AE_LINES_PKG.ValidateCurrentLine;
50891:
50892: ------------------------------------------------------------------------------------
50893: -- 4219869 Business Flow
50894: -- Populated credit and debit amounts -- Need to generate this within IF
50892: ------------------------------------------------------------------------------------
50893: -- 4219869 Business Flow
50894: -- Populated credit and debit amounts -- Need to generate this within IF
50895: ------------------------------------------------------------------------------------
50896: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
50897:
50898: ----------------------------------------------------------------------------------
50899: -- 4219869 Business Flow
50900: -- Update journal entry status -- Need to generate this within IF
50924: -- To allow MPA report to determine if it should generate report process
50925: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
50926: ------------------------------------------------------------------------------------------
50927:
50928: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
50929: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
50930: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
50931: -- call ADRs
50932: -- Bug 4922099
50925: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
50926: ------------------------------------------------------------------------------------------
50927:
50928: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
50929: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
50930: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
50931: -- call ADRs
50932: -- Bug 4922099
50933: --
50949: , x_value_type_code => l_adr_value_type_code
50950: , p_side => 'NA'
50951: );
50952:
50953: xla_ae_lines_pkg.set_ccid(
50954: p_code_combination_id => l_ccid
50955: , p_value_type_code => l_adr_value_type_code
50956: , p_transaction_coa_id => l_adr_transaction_coa_id
50957: , p_accounting_coa_id => l_adr_accounting_coa_id
50972:
50973: --
50974: -- Update the line information that should be overwritten
50975: --
50976: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50977: p_header_num => 1);
50978: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50979:
50980: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50974: -- Update the line information that should be overwritten
50975: --
50976: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50977: p_header_num => 1);
50978: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50979:
50980: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50981:
50982: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50976: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50977: p_header_num => 1);
50978: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50979:
50980: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50981:
50982: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50983: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
50984: END IF;
50979:
50980: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50981:
50982: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50983: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
50984: END IF;
50985:
50986: --
50987: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
50986: --
50987: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
50988: --
50989: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
50990: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
50991: ELSE
50992: ---------------------------------------------------------------------------------------------------
50993: -- 4262811a Switch Sign
50994: ---------------------------------------------------------------------------------------------------
50991: ELSE
50992: ---------------------------------------------------------------------------------------------------
50993: -- 4262811a Switch Sign
50994: ---------------------------------------------------------------------------------------------------
50995: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50996: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50997: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50998: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50999: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50992: ---------------------------------------------------------------------------------------------------
50993: -- 4262811a Switch Sign
50994: ---------------------------------------------------------------------------------------------------
50995: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50996: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50997: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50998: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50999: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51000: -- 5132302
50993: -- 4262811a Switch Sign
50994: ---------------------------------------------------------------------------------------------------
50995: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50996: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50997: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50998: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50999: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51000: -- 5132302
51001: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50994: ---------------------------------------------------------------------------------------------------
50995: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50996: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50997: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50998: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50999: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51000: -- 5132302
51001: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51002: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50995: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50996: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50997: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50998: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50999: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51000: -- 5132302
51001: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51002: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51003:
50997: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50998: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50999: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51000: -- 5132302
51001: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51002: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51003:
51004: END IF;
51005:
50998: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50999: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51000: -- 5132302
51001: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51002: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51003:
51004: END IF;
51005:
51006: -- 4955764
51003:
51004: END IF;
51005:
51006: -- 4955764
51007: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51008: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
51009:
51010:
51011: XLA_AE_LINES_PKG.ValidateCurrentLine;
51007: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51008: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
51009:
51010:
51011: XLA_AE_LINES_PKG.ValidateCurrentLine;
51012: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
51013:
51014: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
51015: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
51008: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
51009:
51010:
51011: XLA_AE_LINES_PKG.ValidateCurrentLine;
51012: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
51013:
51014: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
51015: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
51016: ,p_balance_type_code => l_balance_type_code);
51167: --
51168: -- bulk performance
51169: --
51170: l_balance_type_code VARCHAR2(1);
51171: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
51172: l_log_module VARCHAR2(240);
51173:
51174: --
51175: -- Upgrade strategy
51237: ') = 'N'
51238: THEN
51239:
51240: --
51241: XLA_AE_LINES_PKG.SetNewLine;
51242:
51243: p_balance_type_code := l_balance_type_code;
51244: -- set the flag so later we will know whether the gain loss line needs to be created
51245:
51249:
51250: --
51251: -- bulk performance
51252: --
51253: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
51254: p_header_num => 0); -- 4262811
51255: --
51256: -- set accounting line options
51257: --
51254: p_header_num => 0); -- 4262811
51255: --
51256: -- set accounting line options
51257: --
51258: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
51259: p_natural_side_code => 'C'
51260: , p_gain_or_loss_flag => 'N'
51261: , p_gl_transfer_mode_code => 'S'
51262: , p_acct_entry_type_code => 'A'
51268: --
51269: --
51270: -- set accounting line type info
51271: --
51272: xla_ae_lines_pkg.SetAcctLineType
51273: (p_component_type => l_component_type
51274: ,p_event_type_code => l_event_type_code
51275: ,p_line_definition_owner_code => l_line_definition_owner_code
51276: ,p_line_definition_code => l_line_definition_code
51282: ,p_event_class_code => l_event_class_code);
51283: --
51284: -- set accounting class
51285: --
51286: xla_ae_lines_pkg.SetAcctClass(
51287: p_accounting_class_code => 'RECEIVABLE'
51288: , p_ae_header_id => l_ae_header_id
51289: );
51290:
51290:
51291: --
51292: -- set rounding class
51293: --
51294: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
51295: 'RECEIVABLE';
51296:
51297: --
51298: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51294: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
51295: 'RECEIVABLE';
51296:
51297: --
51298: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51299: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51300: --
51301: -- bulk performance
51302: --
51295: 'RECEIVABLE';
51296:
51297: --
51298: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51299: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51300: --
51301: -- bulk performance
51302: --
51303: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51299: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51300: --
51301: -- bulk performance
51302: --
51303: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51304:
51305: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51306: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51307:
51301: -- bulk performance
51302: --
51303: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51304:
51305: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51306: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51307:
51308: -- 4955764
51309: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51305: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51306: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51307:
51308: -- 4955764
51309: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51310: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
51311:
51312: -- 4458381 Public Sector Enh
51313:
51349: l_rec_acct_attrs.array_num_value(15) := p_source_98;
51350: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
51351: l_rec_acct_attrs.array_char_value(16) := p_source_99;
51352:
51353: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51354: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51355:
51356: ---------------------------------------------------------------------------------------------------------------
51357: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51350: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
51351: l_rec_acct_attrs.array_char_value(16) := p_source_99;
51352:
51353: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51354: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51355:
51356: ---------------------------------------------------------------------------------------------------------------
51357: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51358: ---------------------------------------------------------------------------------------------------------------
51353: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51354: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51355:
51356: ---------------------------------------------------------------------------------------------------------------
51357: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51358: ---------------------------------------------------------------------------------------------------------------
51359: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51360:
51361: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51355:
51356: ---------------------------------------------------------------------------------------------------------------
51357: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51358: ---------------------------------------------------------------------------------------------------------------
51359: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51360:
51361: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51362: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51363:
51357: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51358: ---------------------------------------------------------------------------------------------------------------
51359: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51360:
51361: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51362: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51363:
51364: IF xla_accounting_cache_pkg.GetValueChar
51365: (p_source_code => 'LEDGER_CATEGORY_CODE'
51358: ---------------------------------------------------------------------------------------------------------------
51359: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51360:
51361: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51362: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51363:
51364: IF xla_accounting_cache_pkg.GetValueChar
51365: (p_source_code => 'LEDGER_CATEGORY_CODE'
51366: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
51369: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
51370: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
51371: )
51372: THEN
51373: xla_ae_lines_pkg.BflowUpgEntry
51374: (p_business_method_code => l_bflow_method_code
51375: ,p_business_class_code => l_bflow_class_code
51376: ,p_balance_type => l_balance_type_code);
51377: ELSE
51383: -- call analytical criteria
51384: --
51385:
51386:
51387: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
51388: xla_ae_lines_pkg.SetAnalyticalCriteria(
51389: p_analytical_criterion_name => 'Check Id'
51390: , p_analytical_criterion_owner => 'S'
51391: , p_analytical_criterion_code => 'CHECK_ID'
51384: --
51385:
51386:
51387: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
51388: xla_ae_lines_pkg.SetAnalyticalCriteria(
51389: p_analytical_criterion_name => 'Check Id'
51390: , p_analytical_criterion_owner => 'S'
51391: , p_analytical_criterion_code => 'CHECK_ID'
51392: , p_amb_context_code => 'DEFAULT'
51401: ;
51402: --
51403:
51404:
51405: xla_ae_lines_pkg.g_rec_lines.array_anc_id_2(xla_ae_lines_pkg.g_LineNumber) :=
51406: xla_ae_lines_pkg.SetAnalyticalCriteria(
51407: p_analytical_criterion_name => 'Transaction Type'
51408: , p_analytical_criterion_owner => 'S'
51409: , p_analytical_criterion_code => 'TRANSACTION_TYPE'
51402: --
51403:
51404:
51405: xla_ae_lines_pkg.g_rec_lines.array_anc_id_2(xla_ae_lines_pkg.g_LineNumber) :=
51406: xla_ae_lines_pkg.SetAnalyticalCriteria(
51407: p_analytical_criterion_name => 'Transaction Type'
51408: , p_analytical_criterion_owner => 'S'
51409: , p_analytical_criterion_code => 'TRANSACTION_TYPE'
51410: , p_amb_context_code => 'DEFAULT'
51422: --
51423: -- call description
51424: --
51425:
51426: xla_ae_lines_pkg.SetLineDescription(
51427: p_ae_header_id => l_ae_header_id
51428: ,p_description => Description_11 (
51429: p_application_id => p_application_id
51430: , p_ae_header_id => l_ae_header_id
51457: , x_value_type_code => l_adr_value_type_code
51458: , p_side => 'NA'
51459: );
51460:
51461: xla_ae_lines_pkg.set_ccid(
51462: p_code_combination_id => l_ccid
51463: , p_value_type_code => l_adr_value_type_code
51464: , p_transaction_coa_id => l_adr_transaction_coa_id
51465: , p_accounting_coa_id => l_adr_accounting_coa_id
51493: xla_accounting_err_pkg.build_message
51494: (p_appli_s_name => 'XLA'
51495: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
51496: ,p_token_1 => 'LINE_NUMBER'
51497: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
51498: ,p_token_2 => 'LINE_TYPE_NAME'
51499: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
51500: l_component_type
51501: ,l_component_code
51529: --
51530: --
51531: ------------------------------------------------------------------------------------------------
51532: -- 4219869 Business Flow
51533: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
51534: -- Prior Entry. Currently, the following code is always generated.
51535: ------------------------------------------------------------------------------------------------
51536: XLA_AE_LINES_PKG.ValidateCurrentLine;
51537:
51532: -- 4219869 Business Flow
51533: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
51534: -- Prior Entry. Currently, the following code is always generated.
51535: ------------------------------------------------------------------------------------------------
51536: XLA_AE_LINES_PKG.ValidateCurrentLine;
51537:
51538: ------------------------------------------------------------------------------------
51539: -- 4219869 Business Flow
51540: -- Populated credit and debit amounts -- Need to generate this within IF
51538: ------------------------------------------------------------------------------------
51539: -- 4219869 Business Flow
51540: -- Populated credit and debit amounts -- Need to generate this within IF
51541: ------------------------------------------------------------------------------------
51542: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
51543:
51544: ----------------------------------------------------------------------------------
51545: -- 4219869 Business Flow
51546: -- Update journal entry status -- Need to generate this within IF
51570: -- To allow MPA report to determine if it should generate report process
51571: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
51572: ------------------------------------------------------------------------------------------
51573:
51574: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
51575: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
51576: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
51577: -- call ADRs
51578: -- Bug 4922099
51571: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
51572: ------------------------------------------------------------------------------------------
51573:
51574: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
51575: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
51576: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
51577: -- call ADRs
51578: -- Bug 4922099
51579: --
51595: , x_value_type_code => l_adr_value_type_code
51596: , p_side => 'NA'
51597: );
51598:
51599: xla_ae_lines_pkg.set_ccid(
51600: p_code_combination_id => l_ccid
51601: , p_value_type_code => l_adr_value_type_code
51602: , p_transaction_coa_id => l_adr_transaction_coa_id
51603: , p_accounting_coa_id => l_adr_accounting_coa_id
51618:
51619: --
51620: -- Update the line information that should be overwritten
51621: --
51622: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
51623: p_header_num => 1);
51624: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
51625:
51626: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
51620: -- Update the line information that should be overwritten
51621: --
51622: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
51623: p_header_num => 1);
51624: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
51625:
51626: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
51627:
51628: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
51622: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
51623: p_header_num => 1);
51624: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
51625:
51626: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
51627:
51628: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
51629: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
51630: END IF;
51625:
51626: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
51627:
51628: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
51629: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
51630: END IF;
51631:
51632: --
51633: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
51632: --
51633: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
51634: --
51635: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
51636: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
51637: ELSE
51638: ---------------------------------------------------------------------------------------------------
51639: -- 4262811a Switch Sign
51640: ---------------------------------------------------------------------------------------------------
51637: ELSE
51638: ---------------------------------------------------------------------------------------------------
51639: -- 4262811a Switch Sign
51640: ---------------------------------------------------------------------------------------------------
51641: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51642: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51643: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51644: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51638: ---------------------------------------------------------------------------------------------------
51639: -- 4262811a Switch Sign
51640: ---------------------------------------------------------------------------------------------------
51641: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51642: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51643: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51644: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51646: -- 5132302
51639: -- 4262811a Switch Sign
51640: ---------------------------------------------------------------------------------------------------
51641: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51642: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51643: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51644: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51646: -- 5132302
51647: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51640: ---------------------------------------------------------------------------------------------------
51641: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51642: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51643: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51644: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51646: -- 5132302
51647: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51648: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51641: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51642: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51643: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51644: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51646: -- 5132302
51647: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51648: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51649:
51643: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51644: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51646: -- 5132302
51647: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51648: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51649:
51650: END IF;
51651:
51644: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51646: -- 5132302
51647: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51648: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51649:
51650: END IF;
51651:
51652: -- 4955764
51649:
51650: END IF;
51651:
51652: -- 4955764
51653: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51654: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
51655:
51656:
51657: XLA_AE_LINES_PKG.ValidateCurrentLine;
51653: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51654: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
51655:
51656:
51657: XLA_AE_LINES_PKG.ValidateCurrentLine;
51658: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
51659:
51660: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
51661: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
51654: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
51655:
51656:
51657: XLA_AE_LINES_PKG.ValidateCurrentLine;
51658: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
51659:
51660: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
51661: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
51662: ,p_balance_type_code => l_balance_type_code);
51807: --
51808: -- bulk performance
51809: --
51810: l_balance_type_code VARCHAR2(1);
51811: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
51812: l_log_module VARCHAR2(240);
51813:
51814: --
51815: -- Upgrade strategy
51877: ') = 'N'
51878: THEN
51879:
51880: --
51881: XLA_AE_LINES_PKG.SetNewLine;
51882:
51883: p_balance_type_code := l_balance_type_code;
51884: -- set the flag so later we will know whether the gain loss line needs to be created
51885:
51889:
51890: --
51891: -- bulk performance
51892: --
51893: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
51894: p_header_num => 0); -- 4262811
51895: --
51896: -- set accounting line options
51897: --
51894: p_header_num => 0); -- 4262811
51895: --
51896: -- set accounting line options
51897: --
51898: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
51899: p_natural_side_code => 'C'
51900: , p_gain_or_loss_flag => 'N'
51901: , p_gl_transfer_mode_code => 'S'
51902: , p_acct_entry_type_code => 'A'
51908: --
51909: --
51910: -- set accounting line type info
51911: --
51912: xla_ae_lines_pkg.SetAcctLineType
51913: (p_component_type => l_component_type
51914: ,p_event_type_code => l_event_type_code
51915: ,p_line_definition_owner_code => l_line_definition_owner_code
51916: ,p_line_definition_code => l_line_definition_code
51922: ,p_event_class_code => l_event_class_code);
51923: --
51924: -- set accounting class
51925: --
51926: xla_ae_lines_pkg.SetAcctClass(
51927: p_accounting_class_code => 'DEFERRED_TAX'
51928: , p_ae_header_id => l_ae_header_id
51929: );
51930:
51930:
51931: --
51932: -- set rounding class
51933: --
51934: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
51935: 'RECEIVABLE';
51936:
51937: --
51938: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51934: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
51935: 'RECEIVABLE';
51936:
51937: --
51938: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51939: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51940: --
51941: -- bulk performance
51942: --
51935: 'RECEIVABLE';
51936:
51937: --
51938: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51939: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51940: --
51941: -- bulk performance
51942: --
51943: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51939: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51940: --
51941: -- bulk performance
51942: --
51943: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51944:
51945: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51946: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51947:
51941: -- bulk performance
51942: --
51943: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51944:
51945: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51946: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51947:
51948: -- 4955764
51949: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51945: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51946: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51947:
51948: -- 4955764
51949: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51950: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
51951:
51952: -- 4458381 Public Sector Enh
51953:
51989: l_rec_acct_attrs.array_num_value(15) := p_source_98;
51990: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
51991: l_rec_acct_attrs.array_char_value(16) := p_source_99;
51992:
51993: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51994: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51995:
51996: ---------------------------------------------------------------------------------------------------------------
51997: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51990: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
51991: l_rec_acct_attrs.array_char_value(16) := p_source_99;
51992:
51993: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51994: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51995:
51996: ---------------------------------------------------------------------------------------------------------------
51997: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51998: ---------------------------------------------------------------------------------------------------------------
51993: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51994: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51995:
51996: ---------------------------------------------------------------------------------------------------------------
51997: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51998: ---------------------------------------------------------------------------------------------------------------
51999: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52000:
52001: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51995:
51996: ---------------------------------------------------------------------------------------------------------------
51997: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51998: ---------------------------------------------------------------------------------------------------------------
51999: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52000:
52001: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52002: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52003:
51997: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51998: ---------------------------------------------------------------------------------------------------------------
51999: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52000:
52001: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52002: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52003:
52004: IF xla_accounting_cache_pkg.GetValueChar
52005: (p_source_code => 'LEDGER_CATEGORY_CODE'
51998: ---------------------------------------------------------------------------------------------------------------
51999: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52000:
52001: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52002: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52003:
52004: IF xla_accounting_cache_pkg.GetValueChar
52005: (p_source_code => 'LEDGER_CATEGORY_CODE'
52006: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
52009: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
52010: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
52011: )
52012: THEN
52013: xla_ae_lines_pkg.BflowUpgEntry
52014: (p_business_method_code => l_bflow_method_code
52015: ,p_business_class_code => l_bflow_class_code
52016: ,p_balance_type => l_balance_type_code);
52017: ELSE
52023: -- call analytical criteria
52024: --
52025:
52026:
52027: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
52028: xla_ae_lines_pkg.SetAnalyticalCriteria(
52029: p_analytical_criterion_name => 'Check Id'
52030: , p_analytical_criterion_owner => 'S'
52031: , p_analytical_criterion_code => 'CHECK_ID'
52024: --
52025:
52026:
52027: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
52028: xla_ae_lines_pkg.SetAnalyticalCriteria(
52029: p_analytical_criterion_name => 'Check Id'
52030: , p_analytical_criterion_owner => 'S'
52031: , p_analytical_criterion_code => 'CHECK_ID'
52032: , p_amb_context_code => 'DEFAULT'
52067: , x_value_type_code => l_adr_value_type_code
52068: , p_side => 'NA'
52069: );
52070:
52071: xla_ae_lines_pkg.set_ccid(
52072: p_code_combination_id => l_ccid
52073: , p_value_type_code => l_adr_value_type_code
52074: , p_transaction_coa_id => l_adr_transaction_coa_id
52075: , p_accounting_coa_id => l_adr_accounting_coa_id
52103: xla_accounting_err_pkg.build_message
52104: (p_appli_s_name => 'XLA'
52105: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
52106: ,p_token_1 => 'LINE_NUMBER'
52107: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
52108: ,p_token_2 => 'LINE_TYPE_NAME'
52109: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
52110: l_component_type
52111: ,l_component_code
52139: --
52140: --
52141: ------------------------------------------------------------------------------------------------
52142: -- 4219869 Business Flow
52143: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
52144: -- Prior Entry. Currently, the following code is always generated.
52145: ------------------------------------------------------------------------------------------------
52146: XLA_AE_LINES_PKG.ValidateCurrentLine;
52147:
52142: -- 4219869 Business Flow
52143: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
52144: -- Prior Entry. Currently, the following code is always generated.
52145: ------------------------------------------------------------------------------------------------
52146: XLA_AE_LINES_PKG.ValidateCurrentLine;
52147:
52148: ------------------------------------------------------------------------------------
52149: -- 4219869 Business Flow
52150: -- Populated credit and debit amounts -- Need to generate this within IF
52148: ------------------------------------------------------------------------------------
52149: -- 4219869 Business Flow
52150: -- Populated credit and debit amounts -- Need to generate this within IF
52151: ------------------------------------------------------------------------------------
52152: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52153:
52154: ----------------------------------------------------------------------------------
52155: -- 4219869 Business Flow
52156: -- Update journal entry status -- Need to generate this within IF
52180: -- To allow MPA report to determine if it should generate report process
52181: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
52182: ------------------------------------------------------------------------------------------
52183:
52184: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
52185: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
52186: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
52187: -- call ADRs
52188: -- Bug 4922099
52181: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
52182: ------------------------------------------------------------------------------------------
52183:
52184: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
52185: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
52186: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
52187: -- call ADRs
52188: -- Bug 4922099
52189: --
52205: , x_value_type_code => l_adr_value_type_code
52206: , p_side => 'NA'
52207: );
52208:
52209: xla_ae_lines_pkg.set_ccid(
52210: p_code_combination_id => l_ccid
52211: , p_value_type_code => l_adr_value_type_code
52212: , p_transaction_coa_id => l_adr_transaction_coa_id
52213: , p_accounting_coa_id => l_adr_accounting_coa_id
52228:
52229: --
52230: -- Update the line information that should be overwritten
52231: --
52232: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52233: p_header_num => 1);
52234: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52235:
52236: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52230: -- Update the line information that should be overwritten
52231: --
52232: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52233: p_header_num => 1);
52234: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52235:
52236: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52237:
52238: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52232: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52233: p_header_num => 1);
52234: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52235:
52236: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52237:
52238: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52239: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
52240: END IF;
52235:
52236: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52237:
52238: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52239: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
52240: END IF;
52241:
52242: --
52243: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
52242: --
52243: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
52244: --
52245: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
52246: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
52247: ELSE
52248: ---------------------------------------------------------------------------------------------------
52249: -- 4262811a Switch Sign
52250: ---------------------------------------------------------------------------------------------------
52247: ELSE
52248: ---------------------------------------------------------------------------------------------------
52249: -- 4262811a Switch Sign
52250: ---------------------------------------------------------------------------------------------------
52251: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52252: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52253: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52254: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52255: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52248: ---------------------------------------------------------------------------------------------------
52249: -- 4262811a Switch Sign
52250: ---------------------------------------------------------------------------------------------------
52251: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52252: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52253: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52254: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52255: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52256: -- 5132302
52249: -- 4262811a Switch Sign
52250: ---------------------------------------------------------------------------------------------------
52251: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52252: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52253: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52254: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52255: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52256: -- 5132302
52257: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52250: ---------------------------------------------------------------------------------------------------
52251: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52252: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52253: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52254: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52255: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52256: -- 5132302
52257: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52258: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52251: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52252: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52253: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52254: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52255: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52256: -- 5132302
52257: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52258: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52259:
52253: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52254: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52255: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52256: -- 5132302
52257: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52258: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52259:
52260: END IF;
52261:
52254: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52255: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52256: -- 5132302
52257: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52258: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52259:
52260: END IF;
52261:
52262: -- 4955764
52259:
52260: END IF;
52261:
52262: -- 4955764
52263: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52264: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52265:
52266:
52267: XLA_AE_LINES_PKG.ValidateCurrentLine;
52263: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52264: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52265:
52266:
52267: XLA_AE_LINES_PKG.ValidateCurrentLine;
52268: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52269:
52270: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
52271: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
52264: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52265:
52266:
52267: XLA_AE_LINES_PKG.ValidateCurrentLine;
52268: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52269:
52270: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
52271: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
52272: ,p_balance_type_code => l_balance_type_code);
52417: --
52418: -- bulk performance
52419: --
52420: l_balance_type_code VARCHAR2(1);
52421: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
52422: l_log_module VARCHAR2(240);
52423:
52424: --
52425: -- Upgrade strategy
52487: ') = 'N'
52488: THEN
52489:
52490: --
52491: XLA_AE_LINES_PKG.SetNewLine;
52492:
52493: p_balance_type_code := l_balance_type_code;
52494: -- set the flag so later we will know whether the gain loss line needs to be created
52495:
52499:
52500: --
52501: -- bulk performance
52502: --
52503: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
52504: p_header_num => 0); -- 4262811
52505: --
52506: -- set accounting line options
52507: --
52504: p_header_num => 0); -- 4262811
52505: --
52506: -- set accounting line options
52507: --
52508: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
52509: p_natural_side_code => 'C'
52510: , p_gain_or_loss_flag => 'N'
52511: , p_gl_transfer_mode_code => 'S'
52512: , p_acct_entry_type_code => 'A'
52518: --
52519: --
52520: -- set accounting line type info
52521: --
52522: xla_ae_lines_pkg.SetAcctLineType
52523: (p_component_type => l_component_type
52524: ,p_event_type_code => l_event_type_code
52525: ,p_line_definition_owner_code => l_line_definition_owner_code
52526: ,p_line_definition_code => l_line_definition_code
52532: ,p_event_class_code => l_event_class_code);
52533: --
52534: -- set accounting class
52535: --
52536: xla_ae_lines_pkg.SetAcctClass(
52537: p_accounting_class_code => 'EDISC'
52538: , p_ae_header_id => l_ae_header_id
52539: );
52540:
52540:
52541: --
52542: -- set rounding class
52543: --
52544: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
52545: 'RECEIVABLE';
52546:
52547: --
52548: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
52544: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
52545: 'RECEIVABLE';
52546:
52547: --
52548: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
52549: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
52550: --
52551: -- bulk performance
52552: --
52545: 'RECEIVABLE';
52546:
52547: --
52548: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
52549: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
52550: --
52551: -- bulk performance
52552: --
52553: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
52549: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
52550: --
52551: -- bulk performance
52552: --
52553: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
52554:
52555: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
52556: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
52557:
52551: -- bulk performance
52552: --
52553: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
52554:
52555: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
52556: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
52557:
52558: -- 4955764
52559: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52555: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
52556: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
52557:
52558: -- 4955764
52559: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52560: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
52561:
52562: -- 4458381 Public Sector Enh
52563:
52599: l_rec_acct_attrs.array_num_value(15) := p_source_98;
52600: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
52601: l_rec_acct_attrs.array_char_value(16) := p_source_99;
52602:
52603: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
52604: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
52605:
52606: ---------------------------------------------------------------------------------------------------------------
52607: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52600: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
52601: l_rec_acct_attrs.array_char_value(16) := p_source_99;
52602:
52603: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
52604: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
52605:
52606: ---------------------------------------------------------------------------------------------------------------
52607: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52608: ---------------------------------------------------------------------------------------------------------------
52603: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
52604: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
52605:
52606: ---------------------------------------------------------------------------------------------------------------
52607: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52608: ---------------------------------------------------------------------------------------------------------------
52609: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52610:
52611: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52605:
52606: ---------------------------------------------------------------------------------------------------------------
52607: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52608: ---------------------------------------------------------------------------------------------------------------
52609: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52610:
52611: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52612: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52613:
52607: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52608: ---------------------------------------------------------------------------------------------------------------
52609: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52610:
52611: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52612: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52613:
52614: IF xla_accounting_cache_pkg.GetValueChar
52615: (p_source_code => 'LEDGER_CATEGORY_CODE'
52608: ---------------------------------------------------------------------------------------------------------------
52609: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52610:
52611: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52612: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52613:
52614: IF xla_accounting_cache_pkg.GetValueChar
52615: (p_source_code => 'LEDGER_CATEGORY_CODE'
52616: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
52619: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
52620: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
52621: )
52622: THEN
52623: xla_ae_lines_pkg.BflowUpgEntry
52624: (p_business_method_code => l_bflow_method_code
52625: ,p_business_class_code => l_bflow_class_code
52626: ,p_balance_type => l_balance_type_code);
52627: ELSE
52633: -- call analytical criteria
52634: --
52635:
52636:
52637: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
52638: xla_ae_lines_pkg.SetAnalyticalCriteria(
52639: p_analytical_criterion_name => 'Check Id'
52640: , p_analytical_criterion_owner => 'S'
52641: , p_analytical_criterion_code => 'CHECK_ID'
52634: --
52635:
52636:
52637: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
52638: xla_ae_lines_pkg.SetAnalyticalCriteria(
52639: p_analytical_criterion_name => 'Check Id'
52640: , p_analytical_criterion_owner => 'S'
52641: , p_analytical_criterion_code => 'CHECK_ID'
52642: , p_amb_context_code => 'DEFAULT'
52677: , x_value_type_code => l_adr_value_type_code
52678: , p_side => 'NA'
52679: );
52680:
52681: xla_ae_lines_pkg.set_ccid(
52682: p_code_combination_id => l_ccid
52683: , p_value_type_code => l_adr_value_type_code
52684: , p_transaction_coa_id => l_adr_transaction_coa_id
52685: , p_accounting_coa_id => l_adr_accounting_coa_id
52713: xla_accounting_err_pkg.build_message
52714: (p_appli_s_name => 'XLA'
52715: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
52716: ,p_token_1 => 'LINE_NUMBER'
52717: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
52718: ,p_token_2 => 'LINE_TYPE_NAME'
52719: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
52720: l_component_type
52721: ,l_component_code
52749: --
52750: --
52751: ------------------------------------------------------------------------------------------------
52752: -- 4219869 Business Flow
52753: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
52754: -- Prior Entry. Currently, the following code is always generated.
52755: ------------------------------------------------------------------------------------------------
52756: XLA_AE_LINES_PKG.ValidateCurrentLine;
52757:
52752: -- 4219869 Business Flow
52753: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
52754: -- Prior Entry. Currently, the following code is always generated.
52755: ------------------------------------------------------------------------------------------------
52756: XLA_AE_LINES_PKG.ValidateCurrentLine;
52757:
52758: ------------------------------------------------------------------------------------
52759: -- 4219869 Business Flow
52760: -- Populated credit and debit amounts -- Need to generate this within IF
52758: ------------------------------------------------------------------------------------
52759: -- 4219869 Business Flow
52760: -- Populated credit and debit amounts -- Need to generate this within IF
52761: ------------------------------------------------------------------------------------
52762: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52763:
52764: ----------------------------------------------------------------------------------
52765: -- 4219869 Business Flow
52766: -- Update journal entry status -- Need to generate this within IF
52790: -- To allow MPA report to determine if it should generate report process
52791: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
52792: ------------------------------------------------------------------------------------------
52793:
52794: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
52795: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
52796: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
52797: -- call ADRs
52798: -- Bug 4922099
52791: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
52792: ------------------------------------------------------------------------------------------
52793:
52794: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
52795: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
52796: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
52797: -- call ADRs
52798: -- Bug 4922099
52799: --
52815: , x_value_type_code => l_adr_value_type_code
52816: , p_side => 'NA'
52817: );
52818:
52819: xla_ae_lines_pkg.set_ccid(
52820: p_code_combination_id => l_ccid
52821: , p_value_type_code => l_adr_value_type_code
52822: , p_transaction_coa_id => l_adr_transaction_coa_id
52823: , p_accounting_coa_id => l_adr_accounting_coa_id
52838:
52839: --
52840: -- Update the line information that should be overwritten
52841: --
52842: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52843: p_header_num => 1);
52844: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52845:
52846: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52840: -- Update the line information that should be overwritten
52841: --
52842: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52843: p_header_num => 1);
52844: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52845:
52846: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52847:
52848: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52842: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52843: p_header_num => 1);
52844: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52845:
52846: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52847:
52848: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52849: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
52850: END IF;
52845:
52846: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52847:
52848: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52849: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
52850: END IF;
52851:
52852: --
52853: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
52852: --
52853: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
52854: --
52855: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
52856: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
52857: ELSE
52858: ---------------------------------------------------------------------------------------------------
52859: -- 4262811a Switch Sign
52860: ---------------------------------------------------------------------------------------------------
52857: ELSE
52858: ---------------------------------------------------------------------------------------------------
52859: -- 4262811a Switch Sign
52860: ---------------------------------------------------------------------------------------------------
52861: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52862: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52863: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52865: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52858: ---------------------------------------------------------------------------------------------------
52859: -- 4262811a Switch Sign
52860: ---------------------------------------------------------------------------------------------------
52861: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52862: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52863: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52865: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52866: -- 5132302
52859: -- 4262811a Switch Sign
52860: ---------------------------------------------------------------------------------------------------
52861: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52862: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52863: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52865: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52866: -- 5132302
52867: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52860: ---------------------------------------------------------------------------------------------------
52861: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52862: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52863: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52865: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52866: -- 5132302
52867: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52868: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52861: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52862: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52863: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52865: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52866: -- 5132302
52867: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52868: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52869:
52863: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52865: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52866: -- 5132302
52867: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52868: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52869:
52870: END IF;
52871:
52864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52865: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52866: -- 5132302
52867: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52868: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52869:
52870: END IF;
52871:
52872: -- 4955764
52869:
52870: END IF;
52871:
52872: -- 4955764
52873: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52874: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52875:
52876:
52877: XLA_AE_LINES_PKG.ValidateCurrentLine;
52873: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52874: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52875:
52876:
52877: XLA_AE_LINES_PKG.ValidateCurrentLine;
52878: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52879:
52880: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
52881: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
52874: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52875:
52876:
52877: XLA_AE_LINES_PKG.ValidateCurrentLine;
52878: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52879:
52880: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
52881: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
52882: ,p_balance_type_code => l_balance_type_code);
53027: --
53028: -- bulk performance
53029: --
53030: l_balance_type_code VARCHAR2(1);
53031: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
53032: l_log_module VARCHAR2(240);
53033:
53034: --
53035: -- Upgrade strategy
53097: ') = 'N'
53098: THEN
53099:
53100: --
53101: XLA_AE_LINES_PKG.SetNewLine;
53102:
53103: p_balance_type_code := l_balance_type_code;
53104: -- set the flag so later we will know whether the gain loss line needs to be created
53105:
53109:
53110: --
53111: -- bulk performance
53112: --
53113: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
53114: p_header_num => 0); -- 4262811
53115: --
53116: -- set accounting line options
53117: --
53114: p_header_num => 0); -- 4262811
53115: --
53116: -- set accounting line options
53117: --
53118: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
53119: p_natural_side_code => 'C'
53120: , p_gain_or_loss_flag => 'N'
53121: , p_gl_transfer_mode_code => 'S'
53122: , p_acct_entry_type_code => 'A'
53128: --
53129: --
53130: -- set accounting line type info
53131: --
53132: xla_ae_lines_pkg.SetAcctLineType
53133: (p_component_type => l_component_type
53134: ,p_event_type_code => l_event_type_code
53135: ,p_line_definition_owner_code => l_line_definition_owner_code
53136: ,p_line_definition_code => l_line_definition_code
53142: ,p_event_class_code => l_event_class_code);
53143: --
53144: -- set accounting class
53145: --
53146: xla_ae_lines_pkg.SetAcctClass(
53147: p_accounting_class_code => 'EDISC_NON_REC_TAX'
53148: , p_ae_header_id => l_ae_header_id
53149: );
53150:
53150:
53151: --
53152: -- set rounding class
53153: --
53154: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
53155: 'RECEIVABLE';
53156:
53157: --
53158: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
53154: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
53155: 'RECEIVABLE';
53156:
53157: --
53158: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
53159: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
53160: --
53161: -- bulk performance
53162: --
53155: 'RECEIVABLE';
53156:
53157: --
53158: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
53159: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
53160: --
53161: -- bulk performance
53162: --
53163: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
53159: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
53160: --
53161: -- bulk performance
53162: --
53163: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
53164:
53165: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
53166: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
53167:
53161: -- bulk performance
53162: --
53163: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
53164:
53165: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
53166: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
53167:
53168: -- 4955764
53169: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
53165: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
53166: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
53167:
53168: -- 4955764
53169: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
53170: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
53171:
53172: -- 4458381 Public Sector Enh
53173:
53209: l_rec_acct_attrs.array_num_value(15) := p_source_98;
53210: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
53211: l_rec_acct_attrs.array_char_value(16) := p_source_99;
53212:
53213: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
53214: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
53215:
53216: ---------------------------------------------------------------------------------------------------------------
53217: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
53210: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
53211: l_rec_acct_attrs.array_char_value(16) := p_source_99;
53212:
53213: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
53214: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
53215:
53216: ---------------------------------------------------------------------------------------------------------------
53217: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
53218: ---------------------------------------------------------------------------------------------------------------
53213: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
53214: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
53215:
53216: ---------------------------------------------------------------------------------------------------------------
53217: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
53218: ---------------------------------------------------------------------------------------------------------------
53219: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
53220:
53221: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53215:
53216: ---------------------------------------------------------------------------------------------------------------
53217: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
53218: ---------------------------------------------------------------------------------------------------------------
53219: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
53220:
53221: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53222: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53223:
53217: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
53218: ---------------------------------------------------------------------------------------------------------------
53219: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
53220:
53221: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53222: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53223:
53224: IF xla_accounting_cache_pkg.GetValueChar
53225: (p_source_code => 'LEDGER_CATEGORY_CODE'
53218: ---------------------------------------------------------------------------------------------------------------
53219: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
53220:
53221: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53222: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53223:
53224: IF xla_accounting_cache_pkg.GetValueChar
53225: (p_source_code => 'LEDGER_CATEGORY_CODE'
53226: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
53229: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
53230: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
53231: )
53232: THEN
53233: xla_ae_lines_pkg.BflowUpgEntry
53234: (p_business_method_code => l_bflow_method_code
53235: ,p_business_class_code => l_bflow_class_code
53236: ,p_balance_type => l_balance_type_code);
53237: ELSE
53243: -- call analytical criteria
53244: --
53245:
53246:
53247: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
53248: xla_ae_lines_pkg.SetAnalyticalCriteria(
53249: p_analytical_criterion_name => 'Check Id'
53250: , p_analytical_criterion_owner => 'S'
53251: , p_analytical_criterion_code => 'CHECK_ID'
53244: --
53245:
53246:
53247: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
53248: xla_ae_lines_pkg.SetAnalyticalCriteria(
53249: p_analytical_criterion_name => 'Check Id'
53250: , p_analytical_criterion_owner => 'S'
53251: , p_analytical_criterion_code => 'CHECK_ID'
53252: , p_amb_context_code => 'DEFAULT'
53287: , x_value_type_code => l_adr_value_type_code
53288: , p_side => 'NA'
53289: );
53290:
53291: xla_ae_lines_pkg.set_ccid(
53292: p_code_combination_id => l_ccid
53293: , p_value_type_code => l_adr_value_type_code
53294: , p_transaction_coa_id => l_adr_transaction_coa_id
53295: , p_accounting_coa_id => l_adr_accounting_coa_id
53323: xla_accounting_err_pkg.build_message
53324: (p_appli_s_name => 'XLA'
53325: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
53326: ,p_token_1 => 'LINE_NUMBER'
53327: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
53328: ,p_token_2 => 'LINE_TYPE_NAME'
53329: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
53330: l_component_type
53331: ,l_component_code
53359: --
53360: --
53361: ------------------------------------------------------------------------------------------------
53362: -- 4219869 Business Flow
53363: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
53364: -- Prior Entry. Currently, the following code is always generated.
53365: ------------------------------------------------------------------------------------------------
53366: XLA_AE_LINES_PKG.ValidateCurrentLine;
53367:
53362: -- 4219869 Business Flow
53363: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
53364: -- Prior Entry. Currently, the following code is always generated.
53365: ------------------------------------------------------------------------------------------------
53366: XLA_AE_LINES_PKG.ValidateCurrentLine;
53367:
53368: ------------------------------------------------------------------------------------
53369: -- 4219869 Business Flow
53370: -- Populated credit and debit amounts -- Need to generate this within IF
53368: ------------------------------------------------------------------------------------
53369: -- 4219869 Business Flow
53370: -- Populated credit and debit amounts -- Need to generate this within IF
53371: ------------------------------------------------------------------------------------
53372: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
53373:
53374: ----------------------------------------------------------------------------------
53375: -- 4219869 Business Flow
53376: -- Update journal entry status -- Need to generate this within IF
53400: -- To allow MPA report to determine if it should generate report process
53401: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
53402: ------------------------------------------------------------------------------------------
53403:
53404: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
53405: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
53406: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
53407: -- call ADRs
53408: -- Bug 4922099
53401: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
53402: ------------------------------------------------------------------------------------------
53403:
53404: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
53405: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
53406: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
53407: -- call ADRs
53408: -- Bug 4922099
53409: --
53425: , x_value_type_code => l_adr_value_type_code
53426: , p_side => 'NA'
53427: );
53428:
53429: xla_ae_lines_pkg.set_ccid(
53430: p_code_combination_id => l_ccid
53431: , p_value_type_code => l_adr_value_type_code
53432: , p_transaction_coa_id => l_adr_transaction_coa_id
53433: , p_accounting_coa_id => l_adr_accounting_coa_id
53448:
53449: --
53450: -- Update the line information that should be overwritten
53451: --
53452: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
53453: p_header_num => 1);
53454: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
53455:
53456: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
53450: -- Update the line information that should be overwritten
53451: --
53452: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
53453: p_header_num => 1);
53454: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
53455:
53456: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
53457:
53458: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
53452: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
53453: p_header_num => 1);
53454: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
53455:
53456: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
53457:
53458: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
53459: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
53460: END IF;
53455:
53456: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
53457:
53458: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
53459: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
53460: END IF;
53461:
53462: --
53463: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
53462: --
53463: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
53464: --
53465: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
53466: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
53467: ELSE
53468: ---------------------------------------------------------------------------------------------------
53469: -- 4262811a Switch Sign
53470: ---------------------------------------------------------------------------------------------------
53467: ELSE
53468: ---------------------------------------------------------------------------------------------------
53469: -- 4262811a Switch Sign
53470: ---------------------------------------------------------------------------------------------------
53471: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
53472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53468: ---------------------------------------------------------------------------------------------------
53469: -- 4262811a Switch Sign
53470: ---------------------------------------------------------------------------------------------------
53471: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
53472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53476: -- 5132302
53469: -- 4262811a Switch Sign
53470: ---------------------------------------------------------------------------------------------------
53471: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
53472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53476: -- 5132302
53477: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
53470: ---------------------------------------------------------------------------------------------------
53471: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
53472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53476: -- 5132302
53477: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
53478: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53471: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
53472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53476: -- 5132302
53477: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
53478: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53479:
53473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53476: -- 5132302
53477: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
53478: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53479:
53480: END IF;
53481:
53474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53476: -- 5132302
53477: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
53478: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53479:
53480: END IF;
53481:
53482: -- 4955764
53479:
53480: END IF;
53481:
53482: -- 4955764
53483: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
53484: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
53485:
53486:
53487: XLA_AE_LINES_PKG.ValidateCurrentLine;
53483: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
53484: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
53485:
53486:
53487: XLA_AE_LINES_PKG.ValidateCurrentLine;
53488: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
53489:
53490: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
53491: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
53484: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
53485:
53486:
53487: XLA_AE_LINES_PKG.ValidateCurrentLine;
53488: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
53489:
53490: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
53491: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
53492: ,p_balance_type_code => l_balance_type_code);
53615: --
53616: -- bulk performance
53617: --
53618: l_balance_type_code VARCHAR2(1);
53619: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
53620: l_log_module VARCHAR2(240);
53621:
53622: --
53623: -- Upgrade strategy
53684: IF XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id = XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id OR
53685: l_balance_type_code <> 'B' THEN
53686:
53687: --
53688: XLA_AE_LINES_PKG.SetNewLine;
53689:
53690: p_balance_type_code := l_balance_type_code;
53691: -- set the flag so later we will know whether the gain loss line needs to be created
53692:
53696:
53697: --
53698: -- bulk performance
53699: --
53700: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
53701: p_header_num => 0); -- 4262811
53702: --
53703: -- set accounting line options
53704: --
53701: p_header_num => 0); -- 4262811
53702: --
53703: -- set accounting line options
53704: --
53705: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
53706: p_natural_side_code => 'G'
53707: , p_gain_or_loss_flag => 'N'
53708: , p_gl_transfer_mode_code => 'S'
53709: , p_acct_entry_type_code => 'A'
53715: --
53716: --
53717: -- set accounting line type info
53718: --
53719: xla_ae_lines_pkg.SetAcctLineType
53720: (p_component_type => l_component_type
53721: ,p_event_type_code => l_event_type_code
53722: ,p_line_definition_owner_code => l_line_definition_owner_code
53723: ,p_line_definition_code => l_line_definition_code
53729: ,p_event_class_code => l_event_class_code);
53730: --
53731: -- set accounting class
53732: --
53733: xla_ae_lines_pkg.SetAcctClass(
53734: p_accounting_class_code => 'EXCHANGE_GAIN_LOSS'
53735: , p_ae_header_id => l_ae_header_id
53736: );
53737:
53737:
53738: --
53739: -- set rounding class
53740: --
53741: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
53742: 'EXCHANGE_GAIN_LOSS';
53743:
53744: --
53745: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
53741: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
53742: 'EXCHANGE_GAIN_LOSS';
53743:
53744: --
53745: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
53746: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
53747: --
53748: -- bulk performance
53749: --
53742: 'EXCHANGE_GAIN_LOSS';
53743:
53744: --
53745: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
53746: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
53747: --
53748: -- bulk performance
53749: --
53750: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
53746: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
53747: --
53748: -- bulk performance
53749: --
53750: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
53751:
53752: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
53753: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
53754:
53748: -- bulk performance
53749: --
53750: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
53751:
53752: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
53753: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
53754:
53755: -- 4955764
53756: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
53752: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
53753: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
53754:
53755: -- 4955764
53756: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
53757: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
53758:
53759: -- 4458381 Public Sector Enh
53760:
53776: l_rec_acct_attrs.array_num_value(5) := p_source_98;
53777: l_rec_acct_attrs.array_acct_attr_code(6) := 'PARTY_TYPE';
53778: l_rec_acct_attrs.array_char_value(6) := p_source_99;
53779:
53780: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
53781: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
53782:
53783: ---------------------------------------------------------------------------------------------------------------
53784: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
53777: l_rec_acct_attrs.array_acct_attr_code(6) := 'PARTY_TYPE';
53778: l_rec_acct_attrs.array_char_value(6) := p_source_99;
53779:
53780: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
53781: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
53782:
53783: ---------------------------------------------------------------------------------------------------------------
53784: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
53785: ---------------------------------------------------------------------------------------------------------------
53780: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
53781: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
53782:
53783: ---------------------------------------------------------------------------------------------------------------
53784: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
53785: ---------------------------------------------------------------------------------------------------------------
53786: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
53787:
53788: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53782:
53783: ---------------------------------------------------------------------------------------------------------------
53784: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
53785: ---------------------------------------------------------------------------------------------------------------
53786: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
53787:
53788: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53789: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53790:
53784: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
53785: ---------------------------------------------------------------------------------------------------------------
53786: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
53787:
53788: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53789: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53790:
53791: IF xla_accounting_cache_pkg.GetValueChar
53792: (p_source_code => 'LEDGER_CATEGORY_CODE'
53785: ---------------------------------------------------------------------------------------------------------------
53786: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
53787:
53788: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53789: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53790:
53791: IF xla_accounting_cache_pkg.GetValueChar
53792: (p_source_code => 'LEDGER_CATEGORY_CODE'
53793: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
53796: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
53797: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
53798: )
53799: THEN
53800: xla_ae_lines_pkg.BflowUpgEntry
53801: (p_business_method_code => l_bflow_method_code
53802: ,p_business_class_code => l_bflow_class_code
53803: ,p_balance_type => l_balance_type_code);
53804: ELSE
53810: -- call analytical criteria
53811: --
53812:
53813:
53814: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
53815: xla_ae_lines_pkg.SetAnalyticalCriteria(
53816: p_analytical_criterion_name => 'Check Id'
53817: , p_analytical_criterion_owner => 'S'
53818: , p_analytical_criterion_code => 'CHECK_ID'
53811: --
53812:
53813:
53814: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
53815: xla_ae_lines_pkg.SetAnalyticalCriteria(
53816: p_analytical_criterion_name => 'Check Id'
53817: , p_analytical_criterion_owner => 'S'
53818: , p_analytical_criterion_code => 'CHECK_ID'
53819: , p_amb_context_code => 'DEFAULT'
53854: , x_value_type_code => l_adr_value_type_code
53855: , p_side => 'CREDIT'
53856: );
53857:
53858: xla_ae_lines_pkg.set_ccid(
53859: p_code_combination_id => l_ccid
53860: , p_value_type_code => l_adr_value_type_code
53861: , p_transaction_coa_id => l_adr_transaction_coa_id
53862: , p_accounting_coa_id => l_adr_accounting_coa_id
53880: , x_value_type_code => l_adr_value_type_code
53881: , p_side => 'DEBIT'
53882: );
53883:
53884: xla_ae_lines_pkg.set_ccid(
53885: p_code_combination_id => l_ccid
53886: , p_value_type_code => l_adr_value_type_code
53887: , p_transaction_coa_id => l_adr_transaction_coa_id
53888: , p_accounting_coa_id => l_adr_accounting_coa_id
53916: xla_accounting_err_pkg.build_message
53917: (p_appli_s_name => 'XLA'
53918: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
53919: ,p_token_1 => 'LINE_NUMBER'
53920: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
53921: ,p_token_2 => 'LINE_TYPE_NAME'
53922: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
53923: l_component_type
53924: ,l_component_code
53952: --
53953: --
53954: ------------------------------------------------------------------------------------------------
53955: -- 4219869 Business Flow
53956: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
53957: -- Prior Entry. Currently, the following code is always generated.
53958: ------------------------------------------------------------------------------------------------
53959: XLA_AE_LINES_PKG.ValidateCurrentLine;
53960:
53955: -- 4219869 Business Flow
53956: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
53957: -- Prior Entry. Currently, the following code is always generated.
53958: ------------------------------------------------------------------------------------------------
53959: XLA_AE_LINES_PKG.ValidateCurrentLine;
53960:
53961: ------------------------------------------------------------------------------------
53962: -- 4219869 Business Flow
53963: -- Populated credit and debit amounts -- Need to generate this within IF
53961: ------------------------------------------------------------------------------------
53962: -- 4219869 Business Flow
53963: -- Populated credit and debit amounts -- Need to generate this within IF
53964: ------------------------------------------------------------------------------------
53965: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
53966:
53967: ----------------------------------------------------------------------------------
53968: -- 4219869 Business Flow
53969: -- Update journal entry status -- Need to generate this within IF
53993: -- To allow MPA report to determine if it should generate report process
53994: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
53995: ------------------------------------------------------------------------------------------
53996:
53997: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
53998: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
53999: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
54000: -- call ADRs
54001: -- Bug 4922099
53994: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
53995: ------------------------------------------------------------------------------------------
53996:
53997: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
53998: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
53999: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
54000: -- call ADRs
54001: -- Bug 4922099
54002: --
54018: , x_value_type_code => l_adr_value_type_code
54019: , p_side => 'CREDIT'
54020: );
54021:
54022: xla_ae_lines_pkg.set_ccid(
54023: p_code_combination_id => l_ccid
54024: , p_value_type_code => l_adr_value_type_code
54025: , p_transaction_coa_id => l_adr_transaction_coa_id
54026: , p_accounting_coa_id => l_adr_accounting_coa_id
54044: , x_value_type_code => l_adr_value_type_code
54045: , p_side => 'DEBIT'
54046: );
54047:
54048: xla_ae_lines_pkg.set_ccid(
54049: p_code_combination_id => l_ccid
54050: , p_value_type_code => l_adr_value_type_code
54051: , p_transaction_coa_id => l_adr_transaction_coa_id
54052: , p_accounting_coa_id => l_adr_accounting_coa_id
54067:
54068: --
54069: -- Update the line information that should be overwritten
54070: --
54071: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
54072: p_header_num => 1);
54073: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
54074:
54075: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
54069: -- Update the line information that should be overwritten
54070: --
54071: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
54072: p_header_num => 1);
54073: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
54074:
54075: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
54076:
54077: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
54071: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
54072: p_header_num => 1);
54073: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
54074:
54075: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
54076:
54077: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
54078: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
54079: END IF;
54074:
54075: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
54076:
54077: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
54078: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
54079: END IF;
54080:
54081: --
54082: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
54081: --
54082: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
54083: --
54084: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
54085: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
54086: ELSE
54087: ---------------------------------------------------------------------------------------------------
54088: -- 4262811a Switch Sign
54089: ---------------------------------------------------------------------------------------------------
54086: ELSE
54087: ---------------------------------------------------------------------------------------------------
54088: -- 4262811a Switch Sign
54089: ---------------------------------------------------------------------------------------------------
54090: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
54091: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54092: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54093: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54094: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54087: ---------------------------------------------------------------------------------------------------
54088: -- 4262811a Switch Sign
54089: ---------------------------------------------------------------------------------------------------
54090: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
54091: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54092: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54093: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54094: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54095: -- 5132302
54088: -- 4262811a Switch Sign
54089: ---------------------------------------------------------------------------------------------------
54090: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
54091: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54092: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54093: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54094: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54095: -- 5132302
54096: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
54089: ---------------------------------------------------------------------------------------------------
54090: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
54091: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54092: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54093: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54094: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54095: -- 5132302
54096: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
54097: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54090: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
54091: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54092: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54093: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54094: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54095: -- 5132302
54096: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
54097: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54098:
54092: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54093: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54094: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54095: -- 5132302
54096: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
54097: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54098:
54099: END IF;
54100:
54093: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54094: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54095: -- 5132302
54096: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
54097: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54098:
54099: END IF;
54100:
54101: -- 4955764
54098:
54099: END IF;
54100:
54101: -- 4955764
54102: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
54103: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
54104:
54105:
54106: XLA_AE_LINES_PKG.ValidateCurrentLine;
54102: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
54103: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
54104:
54105:
54106: XLA_AE_LINES_PKG.ValidateCurrentLine;
54107: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
54108:
54109: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
54110: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
54103: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
54104:
54105:
54106: XLA_AE_LINES_PKG.ValidateCurrentLine;
54107: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
54108:
54109: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
54110: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
54111: ,p_balance_type_code => l_balance_type_code);
54257: --
54258: -- bulk performance
54259: --
54260: l_balance_type_code VARCHAR2(1);
54261: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
54262: l_log_module VARCHAR2(240);
54263:
54264: --
54265: -- Upgrade strategy
54329: ') = 'N'
54330: THEN
54331:
54332: --
54333: XLA_AE_LINES_PKG.SetNewLine;
54334:
54335: p_balance_type_code := l_balance_type_code;
54336: -- set the flag so later we will know whether the gain loss line needs to be created
54337:
54341:
54342: --
54343: -- bulk performance
54344: --
54345: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
54346: p_header_num => 0); -- 4262811
54347: --
54348: -- set accounting line options
54349: --
54346: p_header_num => 0); -- 4262811
54347: --
54348: -- set accounting line options
54349: --
54350: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
54351: p_natural_side_code => 'C'
54352: , p_gain_or_loss_flag => 'N'
54353: , p_gl_transfer_mode_code => 'S'
54354: , p_acct_entry_type_code => 'A'
54360: --
54361: --
54362: -- set accounting line type info
54363: --
54364: xla_ae_lines_pkg.SetAcctLineType
54365: (p_component_type => l_component_type
54366: ,p_event_type_code => l_event_type_code
54367: ,p_line_definition_owner_code => l_line_definition_owner_code
54368: ,p_line_definition_code => l_line_definition_code
54374: ,p_event_class_code => l_event_class_code);
54375: --
54376: -- set accounting class
54377: --
54378: xla_ae_lines_pkg.SetAcctClass(
54379: p_accounting_class_code => 'FACTOR'
54380: , p_ae_header_id => l_ae_header_id
54381: );
54382:
54382:
54383: --
54384: -- set rounding class
54385: --
54386: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
54387: 'RECEIVABLE';
54388:
54389: --
54390: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
54386: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
54387: 'RECEIVABLE';
54388:
54389: --
54390: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
54391: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
54392: --
54393: -- bulk performance
54394: --
54387: 'RECEIVABLE';
54388:
54389: --
54390: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
54391: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
54392: --
54393: -- bulk performance
54394: --
54395: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
54391: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
54392: --
54393: -- bulk performance
54394: --
54395: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
54396:
54397: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
54398: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
54399:
54393: -- bulk performance
54394: --
54395: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
54396:
54397: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
54398: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
54399:
54400: -- 4955764
54401: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
54397: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
54398: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
54399:
54400: -- 4955764
54401: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
54402: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
54403:
54404: -- 4458381 Public Sector Enh
54405:
54441: l_rec_acct_attrs.array_num_value(15) := p_source_98;
54442: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
54443: l_rec_acct_attrs.array_char_value(16) := p_source_99;
54444:
54445: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
54446: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
54447:
54448: ---------------------------------------------------------------------------------------------------------------
54449: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
54442: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
54443: l_rec_acct_attrs.array_char_value(16) := p_source_99;
54444:
54445: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
54446: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
54447:
54448: ---------------------------------------------------------------------------------------------------------------
54449: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
54450: ---------------------------------------------------------------------------------------------------------------
54445: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
54446: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
54447:
54448: ---------------------------------------------------------------------------------------------------------------
54449: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
54450: ---------------------------------------------------------------------------------------------------------------
54451: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
54452:
54453: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54447:
54448: ---------------------------------------------------------------------------------------------------------------
54449: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
54450: ---------------------------------------------------------------------------------------------------------------
54451: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
54452:
54453: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54454: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54455:
54449: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
54450: ---------------------------------------------------------------------------------------------------------------
54451: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
54452:
54453: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54454: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54455:
54456: IF xla_accounting_cache_pkg.GetValueChar
54457: (p_source_code => 'LEDGER_CATEGORY_CODE'
54450: ---------------------------------------------------------------------------------------------------------------
54451: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
54452:
54453: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54454: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54455:
54456: IF xla_accounting_cache_pkg.GetValueChar
54457: (p_source_code => 'LEDGER_CATEGORY_CODE'
54458: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
54461: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
54462: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
54463: )
54464: THEN
54465: xla_ae_lines_pkg.BflowUpgEntry
54466: (p_business_method_code => l_bflow_method_code
54467: ,p_business_class_code => l_bflow_class_code
54468: ,p_balance_type => l_balance_type_code);
54469: ELSE
54475: -- call analytical criteria
54476: --
54477:
54478:
54479: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
54480: xla_ae_lines_pkg.SetAnalyticalCriteria(
54481: p_analytical_criterion_name => 'Check Id'
54482: , p_analytical_criterion_owner => 'S'
54483: , p_analytical_criterion_code => 'CHECK_ID'
54476: --
54477:
54478:
54479: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
54480: xla_ae_lines_pkg.SetAnalyticalCriteria(
54481: p_analytical_criterion_name => 'Check Id'
54482: , p_analytical_criterion_owner => 'S'
54483: , p_analytical_criterion_code => 'CHECK_ID'
54484: , p_amb_context_code => 'DEFAULT'
54519: , x_value_type_code => l_adr_value_type_code
54520: , p_side => 'NA'
54521: );
54522:
54523: xla_ae_lines_pkg.set_ccid(
54524: p_code_combination_id => l_ccid
54525: , p_value_type_code => l_adr_value_type_code
54526: , p_transaction_coa_id => l_adr_transaction_coa_id
54527: , p_accounting_coa_id => l_adr_accounting_coa_id
54555: xla_accounting_err_pkg.build_message
54556: (p_appli_s_name => 'XLA'
54557: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
54558: ,p_token_1 => 'LINE_NUMBER'
54559: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
54560: ,p_token_2 => 'LINE_TYPE_NAME'
54561: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
54562: l_component_type
54563: ,l_component_code
54591: --
54592: --
54593: ------------------------------------------------------------------------------------------------
54594: -- 4219869 Business Flow
54595: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
54596: -- Prior Entry. Currently, the following code is always generated.
54597: ------------------------------------------------------------------------------------------------
54598: XLA_AE_LINES_PKG.ValidateCurrentLine;
54599:
54594: -- 4219869 Business Flow
54595: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
54596: -- Prior Entry. Currently, the following code is always generated.
54597: ------------------------------------------------------------------------------------------------
54598: XLA_AE_LINES_PKG.ValidateCurrentLine;
54599:
54600: ------------------------------------------------------------------------------------
54601: -- 4219869 Business Flow
54602: -- Populated credit and debit amounts -- Need to generate this within IF
54600: ------------------------------------------------------------------------------------
54601: -- 4219869 Business Flow
54602: -- Populated credit and debit amounts -- Need to generate this within IF
54603: ------------------------------------------------------------------------------------
54604: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
54605:
54606: ----------------------------------------------------------------------------------
54607: -- 4219869 Business Flow
54608: -- Update journal entry status -- Need to generate this within IF
54632: -- To allow MPA report to determine if it should generate report process
54633: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
54634: ------------------------------------------------------------------------------------------
54635:
54636: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
54637: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
54638: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
54639: -- call ADRs
54640: -- Bug 4922099
54633: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
54634: ------------------------------------------------------------------------------------------
54635:
54636: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
54637: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
54638: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
54639: -- call ADRs
54640: -- Bug 4922099
54641: --
54657: , x_value_type_code => l_adr_value_type_code
54658: , p_side => 'NA'
54659: );
54660:
54661: xla_ae_lines_pkg.set_ccid(
54662: p_code_combination_id => l_ccid
54663: , p_value_type_code => l_adr_value_type_code
54664: , p_transaction_coa_id => l_adr_transaction_coa_id
54665: , p_accounting_coa_id => l_adr_accounting_coa_id
54680:
54681: --
54682: -- Update the line information that should be overwritten
54683: --
54684: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
54685: p_header_num => 1);
54686: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
54687:
54688: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
54682: -- Update the line information that should be overwritten
54683: --
54684: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
54685: p_header_num => 1);
54686: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
54687:
54688: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
54689:
54690: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
54684: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
54685: p_header_num => 1);
54686: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
54687:
54688: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
54689:
54690: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
54691: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
54692: END IF;
54687:
54688: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
54689:
54690: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
54691: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
54692: END IF;
54693:
54694: --
54695: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
54694: --
54695: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
54696: --
54697: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
54698: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
54699: ELSE
54700: ---------------------------------------------------------------------------------------------------
54701: -- 4262811a Switch Sign
54702: ---------------------------------------------------------------------------------------------------
54699: ELSE
54700: ---------------------------------------------------------------------------------------------------
54701: -- 4262811a Switch Sign
54702: ---------------------------------------------------------------------------------------------------
54703: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
54704: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54700: ---------------------------------------------------------------------------------------------------
54701: -- 4262811a Switch Sign
54702: ---------------------------------------------------------------------------------------------------
54703: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
54704: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54708: -- 5132302
54701: -- 4262811a Switch Sign
54702: ---------------------------------------------------------------------------------------------------
54703: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
54704: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54708: -- 5132302
54709: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
54702: ---------------------------------------------------------------------------------------------------
54703: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
54704: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54708: -- 5132302
54709: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
54710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54703: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
54704: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54708: -- 5132302
54709: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
54710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54711:
54705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54708: -- 5132302
54709: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
54710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54711:
54712: END IF;
54713:
54706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54708: -- 5132302
54709: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
54710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54711:
54712: END IF;
54713:
54714: -- 4955764
54711:
54712: END IF;
54713:
54714: -- 4955764
54715: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
54716: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
54717:
54718:
54719: XLA_AE_LINES_PKG.ValidateCurrentLine;
54715: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
54716: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
54717:
54718:
54719: XLA_AE_LINES_PKG.ValidateCurrentLine;
54720: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
54721:
54722: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
54723: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
54716: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
54717:
54718:
54719: XLA_AE_LINES_PKG.ValidateCurrentLine;
54720: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
54721:
54722: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
54723: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
54724: ,p_balance_type_code => l_balance_type_code);
54871: --
54872: -- bulk performance
54873: --
54874: l_balance_type_code VARCHAR2(1);
54875: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
54876: l_log_module VARCHAR2(240);
54877:
54878: --
54879: -- Upgrade strategy
54943: ') = 'N'
54944: THEN
54945:
54946: --
54947: XLA_AE_LINES_PKG.SetNewLine;
54948:
54949: p_balance_type_code := l_balance_type_code;
54950: -- set the flag so later we will know whether the gain loss line needs to be created
54951:
54955:
54956: --
54957: -- bulk performance
54958: --
54959: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
54960: p_header_num => 0); -- 4262811
54961: --
54962: -- set accounting line options
54963: --
54960: p_header_num => 0); -- 4262811
54961: --
54962: -- set accounting line options
54963: --
54964: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
54965: p_natural_side_code => 'C'
54966: , p_gain_or_loss_flag => 'N'
54967: , p_gl_transfer_mode_code => 'S'
54968: , p_acct_entry_type_code => 'A'
54974: --
54975: --
54976: -- set accounting line type info
54977: --
54978: xla_ae_lines_pkg.SetAcctLineType
54979: (p_component_type => l_component_type
54980: ,p_event_type_code => l_event_type_code
54981: ,p_line_definition_owner_code => l_line_definition_owner_code
54982: ,p_line_definition_code => l_line_definition_code
54988: ,p_event_class_code => l_event_class_code);
54989: --
54990: -- set accounting class
54991: --
54992: xla_ae_lines_pkg.SetAcctClass(
54993: p_accounting_class_code => 'FAC_BR'
54994: , p_ae_header_id => l_ae_header_id
54995: );
54996:
54996:
54997: --
54998: -- set rounding class
54999: --
55000: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
55001: 'RECEIVABLE';
55002:
55003: --
55004: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
55000: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
55001: 'RECEIVABLE';
55002:
55003: --
55004: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
55005: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
55006: --
55007: -- bulk performance
55008: --
55001: 'RECEIVABLE';
55002:
55003: --
55004: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
55005: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
55006: --
55007: -- bulk performance
55008: --
55009: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
55005: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
55006: --
55007: -- bulk performance
55008: --
55009: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
55010:
55011: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
55012: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
55013:
55007: -- bulk performance
55008: --
55009: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
55010:
55011: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
55012: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
55013:
55014: -- 4955764
55015: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
55011: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
55012: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
55013:
55014: -- 4955764
55015: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
55016: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
55017:
55018: -- 4458381 Public Sector Enh
55019:
55055: l_rec_acct_attrs.array_num_value(15) := p_source_98;
55056: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
55057: l_rec_acct_attrs.array_char_value(16) := p_source_99;
55058:
55059: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
55060: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
55061:
55062: ---------------------------------------------------------------------------------------------------------------
55063: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
55056: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
55057: l_rec_acct_attrs.array_char_value(16) := p_source_99;
55058:
55059: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
55060: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
55061:
55062: ---------------------------------------------------------------------------------------------------------------
55063: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
55064: ---------------------------------------------------------------------------------------------------------------
55059: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
55060: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
55061:
55062: ---------------------------------------------------------------------------------------------------------------
55063: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
55064: ---------------------------------------------------------------------------------------------------------------
55065: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
55066:
55067: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55061:
55062: ---------------------------------------------------------------------------------------------------------------
55063: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
55064: ---------------------------------------------------------------------------------------------------------------
55065: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
55066:
55067: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55068: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55069:
55063: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
55064: ---------------------------------------------------------------------------------------------------------------
55065: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
55066:
55067: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55068: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55069:
55070: IF xla_accounting_cache_pkg.GetValueChar
55071: (p_source_code => 'LEDGER_CATEGORY_CODE'
55064: ---------------------------------------------------------------------------------------------------------------
55065: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
55066:
55067: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55068: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55069:
55070: IF xla_accounting_cache_pkg.GetValueChar
55071: (p_source_code => 'LEDGER_CATEGORY_CODE'
55072: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
55075: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
55076: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
55077: )
55078: THEN
55079: xla_ae_lines_pkg.BflowUpgEntry
55080: (p_business_method_code => l_bflow_method_code
55081: ,p_business_class_code => l_bflow_class_code
55082: ,p_balance_type => l_balance_type_code);
55083: ELSE
55089: -- call analytical criteria
55090: --
55091:
55092:
55093: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
55094: xla_ae_lines_pkg.SetAnalyticalCriteria(
55095: p_analytical_criterion_name => 'Check Id'
55096: , p_analytical_criterion_owner => 'S'
55097: , p_analytical_criterion_code => 'CHECK_ID'
55090: --
55091:
55092:
55093: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
55094: xla_ae_lines_pkg.SetAnalyticalCriteria(
55095: p_analytical_criterion_name => 'Check Id'
55096: , p_analytical_criterion_owner => 'S'
55097: , p_analytical_criterion_code => 'CHECK_ID'
55098: , p_amb_context_code => 'DEFAULT'
55133: , x_value_type_code => l_adr_value_type_code
55134: , p_side => 'NA'
55135: );
55136:
55137: xla_ae_lines_pkg.set_ccid(
55138: p_code_combination_id => l_ccid
55139: , p_value_type_code => l_adr_value_type_code
55140: , p_transaction_coa_id => l_adr_transaction_coa_id
55141: , p_accounting_coa_id => l_adr_accounting_coa_id
55169: xla_accounting_err_pkg.build_message
55170: (p_appli_s_name => 'XLA'
55171: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
55172: ,p_token_1 => 'LINE_NUMBER'
55173: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
55174: ,p_token_2 => 'LINE_TYPE_NAME'
55175: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
55176: l_component_type
55177: ,l_component_code
55205: --
55206: --
55207: ------------------------------------------------------------------------------------------------
55208: -- 4219869 Business Flow
55209: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
55210: -- Prior Entry. Currently, the following code is always generated.
55211: ------------------------------------------------------------------------------------------------
55212: XLA_AE_LINES_PKG.ValidateCurrentLine;
55213:
55208: -- 4219869 Business Flow
55209: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
55210: -- Prior Entry. Currently, the following code is always generated.
55211: ------------------------------------------------------------------------------------------------
55212: XLA_AE_LINES_PKG.ValidateCurrentLine;
55213:
55214: ------------------------------------------------------------------------------------
55215: -- 4219869 Business Flow
55216: -- Populated credit and debit amounts -- Need to generate this within IF
55214: ------------------------------------------------------------------------------------
55215: -- 4219869 Business Flow
55216: -- Populated credit and debit amounts -- Need to generate this within IF
55217: ------------------------------------------------------------------------------------
55218: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
55219:
55220: ----------------------------------------------------------------------------------
55221: -- 4219869 Business Flow
55222: -- Update journal entry status -- Need to generate this within IF
55246: -- To allow MPA report to determine if it should generate report process
55247: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
55248: ------------------------------------------------------------------------------------------
55249:
55250: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
55251: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
55252: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
55253: -- call ADRs
55254: -- Bug 4922099
55247: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
55248: ------------------------------------------------------------------------------------------
55249:
55250: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
55251: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
55252: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
55253: -- call ADRs
55254: -- Bug 4922099
55255: --
55271: , x_value_type_code => l_adr_value_type_code
55272: , p_side => 'NA'
55273: );
55274:
55275: xla_ae_lines_pkg.set_ccid(
55276: p_code_combination_id => l_ccid
55277: , p_value_type_code => l_adr_value_type_code
55278: , p_transaction_coa_id => l_adr_transaction_coa_id
55279: , p_accounting_coa_id => l_adr_accounting_coa_id
55294:
55295: --
55296: -- Update the line information that should be overwritten
55297: --
55298: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
55299: p_header_num => 1);
55300: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
55301:
55302: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
55296: -- Update the line information that should be overwritten
55297: --
55298: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
55299: p_header_num => 1);
55300: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
55301:
55302: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
55303:
55304: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
55298: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
55299: p_header_num => 1);
55300: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
55301:
55302: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
55303:
55304: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
55305: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
55306: END IF;
55301:
55302: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
55303:
55304: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
55305: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
55306: END IF;
55307:
55308: --
55309: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
55308: --
55309: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
55310: --
55311: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
55312: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
55313: ELSE
55314: ---------------------------------------------------------------------------------------------------
55315: -- 4262811a Switch Sign
55316: ---------------------------------------------------------------------------------------------------
55313: ELSE
55314: ---------------------------------------------------------------------------------------------------
55315: -- 4262811a Switch Sign
55316: ---------------------------------------------------------------------------------------------------
55317: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
55318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55319: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55314: ---------------------------------------------------------------------------------------------------
55315: -- 4262811a Switch Sign
55316: ---------------------------------------------------------------------------------------------------
55317: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
55318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55319: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55322: -- 5132302
55315: -- 4262811a Switch Sign
55316: ---------------------------------------------------------------------------------------------------
55317: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
55318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55319: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55322: -- 5132302
55323: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
55316: ---------------------------------------------------------------------------------------------------
55317: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
55318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55319: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55322: -- 5132302
55323: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
55324: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55317: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
55318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55319: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55322: -- 5132302
55323: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
55324: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55325:
55319: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55322: -- 5132302
55323: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
55324: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55325:
55326: END IF;
55327:
55320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55322: -- 5132302
55323: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
55324: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55325:
55326: END IF;
55327:
55328: -- 4955764
55325:
55326: END IF;
55327:
55328: -- 4955764
55329: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
55330: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
55331:
55332:
55333: XLA_AE_LINES_PKG.ValidateCurrentLine;
55329: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
55330: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
55331:
55332:
55333: XLA_AE_LINES_PKG.ValidateCurrentLine;
55334: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
55335:
55336: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
55337: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
55330: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
55331:
55332:
55333: XLA_AE_LINES_PKG.ValidateCurrentLine;
55334: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
55335:
55336: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
55337: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
55338: ,p_balance_type_code => l_balance_type_code);
55485: --
55486: -- bulk performance
55487: --
55488: l_balance_type_code VARCHAR2(1);
55489: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
55490: l_log_module VARCHAR2(240);
55491:
55492: --
55493: -- Upgrade strategy
55559: ') = 'N'
55560: THEN
55561:
55562: --
55563: XLA_AE_LINES_PKG.SetNewLine;
55564:
55565: p_balance_type_code := l_balance_type_code;
55566: -- set the flag so later we will know whether the gain loss line needs to be created
55567:
55571:
55572: --
55573: -- bulk performance
55574: --
55575: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
55576: p_header_num => 0); -- 4262811
55577: --
55578: -- set accounting line options
55579: --
55576: p_header_num => 0); -- 4262811
55577: --
55578: -- set accounting line options
55579: --
55580: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
55581: p_natural_side_code => 'C'
55582: , p_gain_or_loss_flag => 'N'
55583: , p_gl_transfer_mode_code => 'S'
55584: , p_acct_entry_type_code => 'A'
55590: --
55591: --
55592: -- set accounting line type info
55593: --
55594: xla_ae_lines_pkg.SetAcctLineType
55595: (p_component_type => l_component_type
55596: ,p_event_type_code => l_event_type_code
55597: ,p_line_definition_owner_code => l_line_definition_owner_code
55598: ,p_line_definition_code => l_line_definition_code
55604: ,p_event_class_code => l_event_class_code);
55605: --
55606: -- set accounting class
55607: --
55608: xla_ae_lines_pkg.SetAcctClass(
55609: p_accounting_class_code => 'PMT_NET'
55610: , p_ae_header_id => l_ae_header_id
55611: );
55612:
55612:
55613: --
55614: -- set rounding class
55615: --
55616: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
55617: 'RECEIVABLE';
55618:
55619: --
55620: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
55616: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
55617: 'RECEIVABLE';
55618:
55619: --
55620: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
55621: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
55622: --
55623: -- bulk performance
55624: --
55617: 'RECEIVABLE';
55618:
55619: --
55620: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
55621: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
55622: --
55623: -- bulk performance
55624: --
55625: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
55621: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
55622: --
55623: -- bulk performance
55624: --
55625: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
55626:
55627: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
55628: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
55629:
55623: -- bulk performance
55624: --
55625: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
55626:
55627: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
55628: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
55629:
55630: -- 4955764
55631: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
55627: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
55628: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
55629:
55630: -- 4955764
55631: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
55632: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
55633:
55634: -- 4458381 Public Sector Enh
55635:
55671: l_rec_acct_attrs.array_num_value(15) := p_source_98;
55672: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
55673: l_rec_acct_attrs.array_char_value(16) := p_source_99;
55674:
55675: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
55676: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
55677:
55678: ---------------------------------------------------------------------------------------------------------------
55679: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
55672: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
55673: l_rec_acct_attrs.array_char_value(16) := p_source_99;
55674:
55675: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
55676: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
55677:
55678: ---------------------------------------------------------------------------------------------------------------
55679: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
55680: ---------------------------------------------------------------------------------------------------------------
55675: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
55676: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
55677:
55678: ---------------------------------------------------------------------------------------------------------------
55679: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
55680: ---------------------------------------------------------------------------------------------------------------
55681: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
55682:
55683: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55677:
55678: ---------------------------------------------------------------------------------------------------------------
55679: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
55680: ---------------------------------------------------------------------------------------------------------------
55681: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
55682:
55683: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55684: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55685:
55679: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
55680: ---------------------------------------------------------------------------------------------------------------
55681: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
55682:
55683: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55684: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55685:
55686: IF xla_accounting_cache_pkg.GetValueChar
55687: (p_source_code => 'LEDGER_CATEGORY_CODE'
55680: ---------------------------------------------------------------------------------------------------------------
55681: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
55682:
55683: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55684: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55685:
55686: IF xla_accounting_cache_pkg.GetValueChar
55687: (p_source_code => 'LEDGER_CATEGORY_CODE'
55688: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
55691: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
55692: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
55693: )
55694: THEN
55695: xla_ae_lines_pkg.BflowUpgEntry
55696: (p_business_method_code => l_bflow_method_code
55697: ,p_business_class_code => l_bflow_class_code
55698: ,p_balance_type => l_balance_type_code);
55699: ELSE
55705: -- call analytical criteria
55706: --
55707:
55708:
55709: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
55710: xla_ae_lines_pkg.SetAnalyticalCriteria(
55711: p_analytical_criterion_name => 'Check Id'
55712: , p_analytical_criterion_owner => 'S'
55713: , p_analytical_criterion_code => 'CHECK_ID'
55706: --
55707:
55708:
55709: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
55710: xla_ae_lines_pkg.SetAnalyticalCriteria(
55711: p_analytical_criterion_name => 'Check Id'
55712: , p_analytical_criterion_owner => 'S'
55713: , p_analytical_criterion_code => 'CHECK_ID'
55714: , p_amb_context_code => 'DEFAULT'
55749: , x_value_type_code => l_adr_value_type_code
55750: , p_side => 'NA'
55751: );
55752:
55753: xla_ae_lines_pkg.set_ccid(
55754: p_code_combination_id => l_ccid
55755: , p_value_type_code => l_adr_value_type_code
55756: , p_transaction_coa_id => l_adr_transaction_coa_id
55757: , p_accounting_coa_id => l_adr_accounting_coa_id
55785: xla_accounting_err_pkg.build_message
55786: (p_appli_s_name => 'XLA'
55787: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
55788: ,p_token_1 => 'LINE_NUMBER'
55789: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
55790: ,p_token_2 => 'LINE_TYPE_NAME'
55791: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
55792: l_component_type
55793: ,l_component_code
55821: --
55822: --
55823: ------------------------------------------------------------------------------------------------
55824: -- 4219869 Business Flow
55825: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
55826: -- Prior Entry. Currently, the following code is always generated.
55827: ------------------------------------------------------------------------------------------------
55828: XLA_AE_LINES_PKG.ValidateCurrentLine;
55829:
55824: -- 4219869 Business Flow
55825: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
55826: -- Prior Entry. Currently, the following code is always generated.
55827: ------------------------------------------------------------------------------------------------
55828: XLA_AE_LINES_PKG.ValidateCurrentLine;
55829:
55830: ------------------------------------------------------------------------------------
55831: -- 4219869 Business Flow
55832: -- Populated credit and debit amounts -- Need to generate this within IF
55830: ------------------------------------------------------------------------------------
55831: -- 4219869 Business Flow
55832: -- Populated credit and debit amounts -- Need to generate this within IF
55833: ------------------------------------------------------------------------------------
55834: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
55835:
55836: ----------------------------------------------------------------------------------
55837: -- 4219869 Business Flow
55838: -- Update journal entry status -- Need to generate this within IF
55862: -- To allow MPA report to determine if it should generate report process
55863: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
55864: ------------------------------------------------------------------------------------------
55865:
55866: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
55867: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
55868: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
55869: -- call ADRs
55870: -- Bug 4922099
55863: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
55864: ------------------------------------------------------------------------------------------
55865:
55866: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
55867: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
55868: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
55869: -- call ADRs
55870: -- Bug 4922099
55871: --
55887: , x_value_type_code => l_adr_value_type_code
55888: , p_side => 'NA'
55889: );
55890:
55891: xla_ae_lines_pkg.set_ccid(
55892: p_code_combination_id => l_ccid
55893: , p_value_type_code => l_adr_value_type_code
55894: , p_transaction_coa_id => l_adr_transaction_coa_id
55895: , p_accounting_coa_id => l_adr_accounting_coa_id
55910:
55911: --
55912: -- Update the line information that should be overwritten
55913: --
55914: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
55915: p_header_num => 1);
55916: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
55917:
55918: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
55912: -- Update the line information that should be overwritten
55913: --
55914: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
55915: p_header_num => 1);
55916: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
55917:
55918: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
55919:
55920: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
55914: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
55915: p_header_num => 1);
55916: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
55917:
55918: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
55919:
55920: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
55921: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
55922: END IF;
55917:
55918: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
55919:
55920: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
55921: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
55922: END IF;
55923:
55924: --
55925: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
55924: --
55925: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
55926: --
55927: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
55928: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
55929: ELSE
55930: ---------------------------------------------------------------------------------------------------
55931: -- 4262811a Switch Sign
55932: ---------------------------------------------------------------------------------------------------
55929: ELSE
55930: ---------------------------------------------------------------------------------------------------
55931: -- 4262811a Switch Sign
55932: ---------------------------------------------------------------------------------------------------
55933: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
55934: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55935: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55936: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55937: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55930: ---------------------------------------------------------------------------------------------------
55931: -- 4262811a Switch Sign
55932: ---------------------------------------------------------------------------------------------------
55933: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
55934: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55935: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55936: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55937: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55938: -- 5132302
55931: -- 4262811a Switch Sign
55932: ---------------------------------------------------------------------------------------------------
55933: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
55934: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55935: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55936: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55937: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55938: -- 5132302
55939: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
55932: ---------------------------------------------------------------------------------------------------
55933: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
55934: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55935: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55936: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55937: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55938: -- 5132302
55939: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
55940: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55933: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
55934: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55935: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55936: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55937: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55938: -- 5132302
55939: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
55940: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55941:
55935: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55936: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55937: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55938: -- 5132302
55939: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
55940: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55941:
55942: END IF;
55943:
55936: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55937: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55938: -- 5132302
55939: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
55940: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55941:
55942: END IF;
55943:
55944: -- 4955764
55941:
55942: END IF;
55943:
55944: -- 4955764
55945: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
55946: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
55947:
55948:
55949: XLA_AE_LINES_PKG.ValidateCurrentLine;
55945: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
55946: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
55947:
55948:
55949: XLA_AE_LINES_PKG.ValidateCurrentLine;
55950: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
55951:
55952: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
55953: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
55946: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
55947:
55948:
55949: XLA_AE_LINES_PKG.ValidateCurrentLine;
55950: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
55951:
55952: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
55953: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
55954: ,p_balance_type_code => l_balance_type_code);
56101: --
56102: -- bulk performance
56103: --
56104: l_balance_type_code VARCHAR2(1);
56105: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
56106: l_log_module VARCHAR2(240);
56107:
56108: --
56109: -- Upgrade strategy
56173: ') = 'N'
56174: THEN
56175:
56176: --
56177: XLA_AE_LINES_PKG.SetNewLine;
56178:
56179: p_balance_type_code := l_balance_type_code;
56180: -- set the flag so later we will know whether the gain loss line needs to be created
56181:
56185:
56186: --
56187: -- bulk performance
56188: --
56189: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
56190: p_header_num => 0); -- 4262811
56191: --
56192: -- set accounting line options
56193: --
56190: p_header_num => 0); -- 4262811
56191: --
56192: -- set accounting line options
56193: --
56194: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
56195: p_natural_side_code => 'C'
56196: , p_gain_or_loss_flag => 'N'
56197: , p_gl_transfer_mode_code => 'S'
56198: , p_acct_entry_type_code => 'A'
56204: --
56205: --
56206: -- set accounting line type info
56207: --
56208: xla_ae_lines_pkg.SetAcctLineType
56209: (p_component_type => l_component_type
56210: ,p_event_type_code => l_event_type_code
56211: ,p_line_definition_owner_code => l_line_definition_owner_code
56212: ,p_line_definition_code => l_line_definition_code
56218: ,p_event_class_code => l_event_class_code);
56219: --
56220: -- set accounting class
56221: --
56222: xla_ae_lines_pkg.SetAcctClass(
56223: p_accounting_class_code => 'PREPAY'
56224: , p_ae_header_id => l_ae_header_id
56225: );
56226:
56226:
56227: --
56228: -- set rounding class
56229: --
56230: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
56231: 'RECEIVABLE';
56232:
56233: --
56234: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
56230: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
56231: 'RECEIVABLE';
56232:
56233: --
56234: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
56235: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
56236: --
56237: -- bulk performance
56238: --
56231: 'RECEIVABLE';
56232:
56233: --
56234: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
56235: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
56236: --
56237: -- bulk performance
56238: --
56239: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
56235: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
56236: --
56237: -- bulk performance
56238: --
56239: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
56240:
56241: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
56242: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
56243:
56237: -- bulk performance
56238: --
56239: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
56240:
56241: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
56242: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
56243:
56244: -- 4955764
56245: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
56241: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
56242: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
56243:
56244: -- 4955764
56245: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
56246: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
56247:
56248: -- 4458381 Public Sector Enh
56249:
56285: l_rec_acct_attrs.array_num_value(15) := p_source_98;
56286: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
56287: l_rec_acct_attrs.array_char_value(16) := p_source_99;
56288:
56289: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
56290: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
56291:
56292: ---------------------------------------------------------------------------------------------------------------
56293: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
56286: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
56287: l_rec_acct_attrs.array_char_value(16) := p_source_99;
56288:
56289: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
56290: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
56291:
56292: ---------------------------------------------------------------------------------------------------------------
56293: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
56294: ---------------------------------------------------------------------------------------------------------------
56289: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
56290: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
56291:
56292: ---------------------------------------------------------------------------------------------------------------
56293: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
56294: ---------------------------------------------------------------------------------------------------------------
56295: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
56296:
56297: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56291:
56292: ---------------------------------------------------------------------------------------------------------------
56293: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
56294: ---------------------------------------------------------------------------------------------------------------
56295: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
56296:
56297: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56298: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56299:
56293: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
56294: ---------------------------------------------------------------------------------------------------------------
56295: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
56296:
56297: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56298: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56299:
56300: IF xla_accounting_cache_pkg.GetValueChar
56301: (p_source_code => 'LEDGER_CATEGORY_CODE'
56294: ---------------------------------------------------------------------------------------------------------------
56295: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
56296:
56297: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56298: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56299:
56300: IF xla_accounting_cache_pkg.GetValueChar
56301: (p_source_code => 'LEDGER_CATEGORY_CODE'
56302: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
56305: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
56306: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
56307: )
56308: THEN
56309: xla_ae_lines_pkg.BflowUpgEntry
56310: (p_business_method_code => l_bflow_method_code
56311: ,p_business_class_code => l_bflow_class_code
56312: ,p_balance_type => l_balance_type_code);
56313: ELSE
56319: -- call analytical criteria
56320: --
56321:
56322:
56323: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
56324: xla_ae_lines_pkg.SetAnalyticalCriteria(
56325: p_analytical_criterion_name => 'Check Id'
56326: , p_analytical_criterion_owner => 'S'
56327: , p_analytical_criterion_code => 'CHECK_ID'
56320: --
56321:
56322:
56323: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
56324: xla_ae_lines_pkg.SetAnalyticalCriteria(
56325: p_analytical_criterion_name => 'Check Id'
56326: , p_analytical_criterion_owner => 'S'
56327: , p_analytical_criterion_code => 'CHECK_ID'
56328: , p_amb_context_code => 'DEFAULT'
56363: , x_value_type_code => l_adr_value_type_code
56364: , p_side => 'NA'
56365: );
56366:
56367: xla_ae_lines_pkg.set_ccid(
56368: p_code_combination_id => l_ccid
56369: , p_value_type_code => l_adr_value_type_code
56370: , p_transaction_coa_id => l_adr_transaction_coa_id
56371: , p_accounting_coa_id => l_adr_accounting_coa_id
56399: xla_accounting_err_pkg.build_message
56400: (p_appli_s_name => 'XLA'
56401: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
56402: ,p_token_1 => 'LINE_NUMBER'
56403: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
56404: ,p_token_2 => 'LINE_TYPE_NAME'
56405: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
56406: l_component_type
56407: ,l_component_code
56435: --
56436: --
56437: ------------------------------------------------------------------------------------------------
56438: -- 4219869 Business Flow
56439: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
56440: -- Prior Entry. Currently, the following code is always generated.
56441: ------------------------------------------------------------------------------------------------
56442: XLA_AE_LINES_PKG.ValidateCurrentLine;
56443:
56438: -- 4219869 Business Flow
56439: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
56440: -- Prior Entry. Currently, the following code is always generated.
56441: ------------------------------------------------------------------------------------------------
56442: XLA_AE_LINES_PKG.ValidateCurrentLine;
56443:
56444: ------------------------------------------------------------------------------------
56445: -- 4219869 Business Flow
56446: -- Populated credit and debit amounts -- Need to generate this within IF
56444: ------------------------------------------------------------------------------------
56445: -- 4219869 Business Flow
56446: -- Populated credit and debit amounts -- Need to generate this within IF
56447: ------------------------------------------------------------------------------------
56448: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
56449:
56450: ----------------------------------------------------------------------------------
56451: -- 4219869 Business Flow
56452: -- Update journal entry status -- Need to generate this within IF
56476: -- To allow MPA report to determine if it should generate report process
56477: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
56478: ------------------------------------------------------------------------------------------
56479:
56480: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
56481: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
56482: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
56483: -- call ADRs
56484: -- Bug 4922099
56477: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
56478: ------------------------------------------------------------------------------------------
56479:
56480: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
56481: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
56482: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
56483: -- call ADRs
56484: -- Bug 4922099
56485: --
56501: , x_value_type_code => l_adr_value_type_code
56502: , p_side => 'NA'
56503: );
56504:
56505: xla_ae_lines_pkg.set_ccid(
56506: p_code_combination_id => l_ccid
56507: , p_value_type_code => l_adr_value_type_code
56508: , p_transaction_coa_id => l_adr_transaction_coa_id
56509: , p_accounting_coa_id => l_adr_accounting_coa_id
56524:
56525: --
56526: -- Update the line information that should be overwritten
56527: --
56528: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
56529: p_header_num => 1);
56530: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
56531:
56532: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
56526: -- Update the line information that should be overwritten
56527: --
56528: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
56529: p_header_num => 1);
56530: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
56531:
56532: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
56533:
56534: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
56528: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
56529: p_header_num => 1);
56530: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
56531:
56532: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
56533:
56534: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
56535: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
56536: END IF;
56531:
56532: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
56533:
56534: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
56535: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
56536: END IF;
56537:
56538: --
56539: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
56538: --
56539: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
56540: --
56541: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
56542: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
56543: ELSE
56544: ---------------------------------------------------------------------------------------------------
56545: -- 4262811a Switch Sign
56546: ---------------------------------------------------------------------------------------------------
56543: ELSE
56544: ---------------------------------------------------------------------------------------------------
56545: -- 4262811a Switch Sign
56546: ---------------------------------------------------------------------------------------------------
56547: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
56548: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56549: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56544: ---------------------------------------------------------------------------------------------------
56545: -- 4262811a Switch Sign
56546: ---------------------------------------------------------------------------------------------------
56547: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
56548: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56549: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56552: -- 5132302
56545: -- 4262811a Switch Sign
56546: ---------------------------------------------------------------------------------------------------
56547: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
56548: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56549: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56552: -- 5132302
56553: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
56546: ---------------------------------------------------------------------------------------------------
56547: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
56548: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56549: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56552: -- 5132302
56553: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
56554: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56547: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
56548: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56549: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56552: -- 5132302
56553: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
56554: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56555:
56549: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56552: -- 5132302
56553: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
56554: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56555:
56556: END IF;
56557:
56550: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56551: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56552: -- 5132302
56553: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
56554: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56555:
56556: END IF;
56557:
56558: -- 4955764
56555:
56556: END IF;
56557:
56558: -- 4955764
56559: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
56560: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
56561:
56562:
56563: XLA_AE_LINES_PKG.ValidateCurrentLine;
56559: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
56560: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
56561:
56562:
56563: XLA_AE_LINES_PKG.ValidateCurrentLine;
56564: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
56565:
56566: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
56567: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
56560: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
56561:
56562:
56563: XLA_AE_LINES_PKG.ValidateCurrentLine;
56564: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
56565:
56566: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
56567: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
56568: ,p_balance_type_code => l_balance_type_code);
56717: --
56718: -- bulk performance
56719: --
56720: l_balance_type_code VARCHAR2(1);
56721: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
56722: l_log_module VARCHAR2(240);
56723:
56724: --
56725: -- Upgrade strategy
56795: ') = 'N')
56796: THEN
56797:
56798: --
56799: XLA_AE_LINES_PKG.SetNewLine;
56800:
56801: p_balance_type_code := l_balance_type_code;
56802: -- set the flag so later we will know whether the gain loss line needs to be created
56803:
56807:
56808: --
56809: -- bulk performance
56810: --
56811: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
56812: p_header_num => 0); -- 4262811
56813: --
56814: -- set accounting line options
56815: --
56812: p_header_num => 0); -- 4262811
56813: --
56814: -- set accounting line options
56815: --
56816: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
56817: p_natural_side_code => 'C'
56818: , p_gain_or_loss_flag => 'N'
56819: , p_gl_transfer_mode_code => 'S'
56820: , p_acct_entry_type_code => 'A'
56826: --
56827: --
56828: -- set accounting line type info
56829: --
56830: xla_ae_lines_pkg.SetAcctLineType
56831: (p_component_type => l_component_type
56832: ,p_event_type_code => l_event_type_code
56833: ,p_line_definition_owner_code => l_line_definition_owner_code
56834: ,p_line_definition_code => l_line_definition_code
56840: ,p_event_class_code => l_event_class_code);
56841: --
56842: -- set accounting class
56843: --
56844: xla_ae_lines_pkg.SetAcctClass(
56845: p_accounting_class_code => 'REFUND'
56846: , p_ae_header_id => l_ae_header_id
56847: );
56848:
56848:
56849: --
56850: -- set rounding class
56851: --
56852: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
56853: 'RECEIVABLE';
56854:
56855: --
56856: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
56852: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
56853: 'RECEIVABLE';
56854:
56855: --
56856: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
56857: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
56858: --
56859: -- bulk performance
56860: --
56853: 'RECEIVABLE';
56854:
56855: --
56856: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
56857: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
56858: --
56859: -- bulk performance
56860: --
56861: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
56857: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
56858: --
56859: -- bulk performance
56860: --
56861: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
56862:
56863: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
56864: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
56865:
56859: -- bulk performance
56860: --
56861: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
56862:
56863: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
56864: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
56865:
56866: -- 4955764
56867: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
56863: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
56864: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
56865:
56866: -- 4955764
56867: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
56868: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
56869:
56870: -- 4458381 Public Sector Enh
56871:
56907: l_rec_acct_attrs.array_num_value(15) := p_source_98;
56908: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
56909: l_rec_acct_attrs.array_char_value(16) := p_source_99;
56910:
56911: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
56912: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
56913:
56914: ---------------------------------------------------------------------------------------------------------------
56915: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
56908: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
56909: l_rec_acct_attrs.array_char_value(16) := p_source_99;
56910:
56911: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
56912: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
56913:
56914: ---------------------------------------------------------------------------------------------------------------
56915: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
56916: ---------------------------------------------------------------------------------------------------------------
56911: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
56912: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
56913:
56914: ---------------------------------------------------------------------------------------------------------------
56915: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
56916: ---------------------------------------------------------------------------------------------------------------
56917: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
56918:
56919: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56913:
56914: ---------------------------------------------------------------------------------------------------------------
56915: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
56916: ---------------------------------------------------------------------------------------------------------------
56917: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
56918:
56919: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56920: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56921:
56915: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
56916: ---------------------------------------------------------------------------------------------------------------
56917: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
56918:
56919: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56920: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56921:
56922: IF xla_accounting_cache_pkg.GetValueChar
56923: (p_source_code => 'LEDGER_CATEGORY_CODE'
56916: ---------------------------------------------------------------------------------------------------------------
56917: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
56918:
56919: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56920: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56921:
56922: IF xla_accounting_cache_pkg.GetValueChar
56923: (p_source_code => 'LEDGER_CATEGORY_CODE'
56924: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
56927: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
56928: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
56929: )
56930: THEN
56931: xla_ae_lines_pkg.BflowUpgEntry
56932: (p_business_method_code => l_bflow_method_code
56933: ,p_business_class_code => l_bflow_class_code
56934: ,p_balance_type => l_balance_type_code);
56935: ELSE
56941: -- call analytical criteria
56942: --
56943:
56944:
56945: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
56946: xla_ae_lines_pkg.SetAnalyticalCriteria(
56947: p_analytical_criterion_name => 'Check Id'
56948: , p_analytical_criterion_owner => 'S'
56949: , p_analytical_criterion_code => 'CHECK_ID'
56942: --
56943:
56944:
56945: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
56946: xla_ae_lines_pkg.SetAnalyticalCriteria(
56947: p_analytical_criterion_name => 'Check Id'
56948: , p_analytical_criterion_owner => 'S'
56949: , p_analytical_criterion_code => 'CHECK_ID'
56950: , p_amb_context_code => 'DEFAULT'
56959: ;
56960: --
56961:
56962:
56963: xla_ae_lines_pkg.g_rec_lines.array_anc_id_2(xla_ae_lines_pkg.g_LineNumber) :=
56964: xla_ae_lines_pkg.SetAnalyticalCriteria(
56965: p_analytical_criterion_name => 'Receivable Activity'
56966: , p_analytical_criterion_owner => 'S'
56967: , p_analytical_criterion_code => 'RECEIVABLE_ACTIVITY'
56960: --
56961:
56962:
56963: xla_ae_lines_pkg.g_rec_lines.array_anc_id_2(xla_ae_lines_pkg.g_LineNumber) :=
56964: xla_ae_lines_pkg.SetAnalyticalCriteria(
56965: p_analytical_criterion_name => 'Receivable Activity'
56966: , p_analytical_criterion_owner => 'S'
56967: , p_analytical_criterion_code => 'RECEIVABLE_ACTIVITY'
56968: , p_amb_context_code => 'DEFAULT'
57003: , x_value_type_code => l_adr_value_type_code
57004: , p_side => 'NA'
57005: );
57006:
57007: xla_ae_lines_pkg.set_ccid(
57008: p_code_combination_id => l_ccid
57009: , p_value_type_code => l_adr_value_type_code
57010: , p_transaction_coa_id => l_adr_transaction_coa_id
57011: , p_accounting_coa_id => l_adr_accounting_coa_id
57039: xla_accounting_err_pkg.build_message
57040: (p_appli_s_name => 'XLA'
57041: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
57042: ,p_token_1 => 'LINE_NUMBER'
57043: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
57044: ,p_token_2 => 'LINE_TYPE_NAME'
57045: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
57046: l_component_type
57047: ,l_component_code
57075: --
57076: --
57077: ------------------------------------------------------------------------------------------------
57078: -- 4219869 Business Flow
57079: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
57080: -- Prior Entry. Currently, the following code is always generated.
57081: ------------------------------------------------------------------------------------------------
57082: XLA_AE_LINES_PKG.ValidateCurrentLine;
57083:
57078: -- 4219869 Business Flow
57079: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
57080: -- Prior Entry. Currently, the following code is always generated.
57081: ------------------------------------------------------------------------------------------------
57082: XLA_AE_LINES_PKG.ValidateCurrentLine;
57083:
57084: ------------------------------------------------------------------------------------
57085: -- 4219869 Business Flow
57086: -- Populated credit and debit amounts -- Need to generate this within IF
57084: ------------------------------------------------------------------------------------
57085: -- 4219869 Business Flow
57086: -- Populated credit and debit amounts -- Need to generate this within IF
57087: ------------------------------------------------------------------------------------
57088: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
57089:
57090: ----------------------------------------------------------------------------------
57091: -- 4219869 Business Flow
57092: -- Update journal entry status -- Need to generate this within IF
57116: -- To allow MPA report to determine if it should generate report process
57117: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
57118: ------------------------------------------------------------------------------------------
57119:
57120: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
57121: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
57122: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
57123: -- call ADRs
57124: -- Bug 4922099
57117: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
57118: ------------------------------------------------------------------------------------------
57119:
57120: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
57121: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
57122: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
57123: -- call ADRs
57124: -- Bug 4922099
57125: --
57141: , x_value_type_code => l_adr_value_type_code
57142: , p_side => 'NA'
57143: );
57144:
57145: xla_ae_lines_pkg.set_ccid(
57146: p_code_combination_id => l_ccid
57147: , p_value_type_code => l_adr_value_type_code
57148: , p_transaction_coa_id => l_adr_transaction_coa_id
57149: , p_accounting_coa_id => l_adr_accounting_coa_id
57164:
57165: --
57166: -- Update the line information that should be overwritten
57167: --
57168: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
57169: p_header_num => 1);
57170: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
57171:
57172: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
57166: -- Update the line information that should be overwritten
57167: --
57168: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
57169: p_header_num => 1);
57170: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
57171:
57172: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
57173:
57174: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
57168: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
57169: p_header_num => 1);
57170: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
57171:
57172: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
57173:
57174: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
57175: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
57176: END IF;
57171:
57172: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
57173:
57174: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
57175: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
57176: END IF;
57177:
57178: --
57179: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
57178: --
57179: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
57180: --
57181: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
57182: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
57183: ELSE
57184: ---------------------------------------------------------------------------------------------------
57185: -- 4262811a Switch Sign
57186: ---------------------------------------------------------------------------------------------------
57183: ELSE
57184: ---------------------------------------------------------------------------------------------------
57185: -- 4262811a Switch Sign
57186: ---------------------------------------------------------------------------------------------------
57187: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
57188: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57189: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57190: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57184: ---------------------------------------------------------------------------------------------------
57185: -- 4262811a Switch Sign
57186: ---------------------------------------------------------------------------------------------------
57187: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
57188: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57189: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57190: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57192: -- 5132302
57185: -- 4262811a Switch Sign
57186: ---------------------------------------------------------------------------------------------------
57187: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
57188: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57189: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57190: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57192: -- 5132302
57193: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
57186: ---------------------------------------------------------------------------------------------------
57187: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
57188: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57189: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57190: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57192: -- 5132302
57193: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
57194: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57187: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
57188: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57189: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57190: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57192: -- 5132302
57193: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
57194: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57195:
57189: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57190: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57192: -- 5132302
57193: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
57194: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57195:
57196: END IF;
57197:
57190: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57192: -- 5132302
57193: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
57194: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57195:
57196: END IF;
57197:
57198: -- 4955764
57195:
57196: END IF;
57197:
57198: -- 4955764
57199: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
57200: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
57201:
57202:
57203: XLA_AE_LINES_PKG.ValidateCurrentLine;
57199: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
57200: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
57201:
57202:
57203: XLA_AE_LINES_PKG.ValidateCurrentLine;
57204: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
57205:
57206: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
57207: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
57200: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
57201:
57202:
57203: XLA_AE_LINES_PKG.ValidateCurrentLine;
57204: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
57205:
57206: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
57207: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
57208: ,p_balance_type_code => l_balance_type_code);
57355: --
57356: -- bulk performance
57357: --
57358: l_balance_type_code VARCHAR2(1);
57359: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
57360: l_log_module VARCHAR2(240);
57361:
57362: --
57363: -- Upgrade strategy
57427: ') = 'N'
57428: THEN
57429:
57430: --
57431: XLA_AE_LINES_PKG.SetNewLine;
57432:
57433: p_balance_type_code := l_balance_type_code;
57434: -- set the flag so later we will know whether the gain loss line needs to be created
57435:
57439:
57440: --
57441: -- bulk performance
57442: --
57443: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
57444: p_header_num => 0); -- 4262811
57445: --
57446: -- set accounting line options
57447: --
57444: p_header_num => 0); -- 4262811
57445: --
57446: -- set accounting line options
57447: --
57448: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
57449: p_natural_side_code => 'C'
57450: , p_gain_or_loss_flag => 'N'
57451: , p_gl_transfer_mode_code => 'S'
57452: , p_acct_entry_type_code => 'A'
57458: --
57459: --
57460: -- set accounting line type info
57461: --
57462: xla_ae_lines_pkg.SetAcctLineType
57463: (p_component_type => l_component_type
57464: ,p_event_type_code => l_event_type_code
57465: ,p_line_definition_owner_code => l_line_definition_owner_code
57466: ,p_line_definition_code => l_line_definition_code
57472: ,p_event_class_code => l_event_class_code);
57473: --
57474: -- set accounting class
57475: --
57476: xla_ae_lines_pkg.SetAcctClass(
57477: p_accounting_class_code => 'REMITTANCE'
57478: , p_ae_header_id => l_ae_header_id
57479: );
57480:
57480:
57481: --
57482: -- set rounding class
57483: --
57484: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
57485: 'RECEIVABLE';
57486:
57487: --
57488: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
57484: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
57485: 'RECEIVABLE';
57486:
57487: --
57488: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
57489: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
57490: --
57491: -- bulk performance
57492: --
57485: 'RECEIVABLE';
57486:
57487: --
57488: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
57489: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
57490: --
57491: -- bulk performance
57492: --
57493: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
57489: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
57490: --
57491: -- bulk performance
57492: --
57493: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
57494:
57495: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
57496: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
57497:
57491: -- bulk performance
57492: --
57493: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
57494:
57495: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
57496: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
57497:
57498: -- 4955764
57499: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
57495: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
57496: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
57497:
57498: -- 4955764
57499: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
57500: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
57501:
57502: -- 4458381 Public Sector Enh
57503:
57539: l_rec_acct_attrs.array_num_value(15) := p_source_98;
57540: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
57541: l_rec_acct_attrs.array_char_value(16) := p_source_99;
57542:
57543: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
57544: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
57545:
57546: ---------------------------------------------------------------------------------------------------------------
57547: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
57540: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
57541: l_rec_acct_attrs.array_char_value(16) := p_source_99;
57542:
57543: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
57544: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
57545:
57546: ---------------------------------------------------------------------------------------------------------------
57547: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
57548: ---------------------------------------------------------------------------------------------------------------
57543: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
57544: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
57545:
57546: ---------------------------------------------------------------------------------------------------------------
57547: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
57548: ---------------------------------------------------------------------------------------------------------------
57549: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
57550:
57551: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57545:
57546: ---------------------------------------------------------------------------------------------------------------
57547: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
57548: ---------------------------------------------------------------------------------------------------------------
57549: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
57550:
57551: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57552: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57553:
57547: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
57548: ---------------------------------------------------------------------------------------------------------------
57549: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
57550:
57551: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57552: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57553:
57554: IF xla_accounting_cache_pkg.GetValueChar
57555: (p_source_code => 'LEDGER_CATEGORY_CODE'
57548: ---------------------------------------------------------------------------------------------------------------
57549: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
57550:
57551: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57552: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57553:
57554: IF xla_accounting_cache_pkg.GetValueChar
57555: (p_source_code => 'LEDGER_CATEGORY_CODE'
57556: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
57559: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
57560: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
57561: )
57562: THEN
57563: xla_ae_lines_pkg.BflowUpgEntry
57564: (p_business_method_code => l_bflow_method_code
57565: ,p_business_class_code => l_bflow_class_code
57566: ,p_balance_type => l_balance_type_code);
57567: ELSE
57573: -- call analytical criteria
57574: --
57575:
57576:
57577: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
57578: xla_ae_lines_pkg.SetAnalyticalCriteria(
57579: p_analytical_criterion_name => 'Check Id'
57580: , p_analytical_criterion_owner => 'S'
57581: , p_analytical_criterion_code => 'CHECK_ID'
57574: --
57575:
57576:
57577: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
57578: xla_ae_lines_pkg.SetAnalyticalCriteria(
57579: p_analytical_criterion_name => 'Check Id'
57580: , p_analytical_criterion_owner => 'S'
57581: , p_analytical_criterion_code => 'CHECK_ID'
57582: , p_amb_context_code => 'DEFAULT'
57617: , x_value_type_code => l_adr_value_type_code
57618: , p_side => 'NA'
57619: );
57620:
57621: xla_ae_lines_pkg.set_ccid(
57622: p_code_combination_id => l_ccid
57623: , p_value_type_code => l_adr_value_type_code
57624: , p_transaction_coa_id => l_adr_transaction_coa_id
57625: , p_accounting_coa_id => l_adr_accounting_coa_id
57653: xla_accounting_err_pkg.build_message
57654: (p_appli_s_name => 'XLA'
57655: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
57656: ,p_token_1 => 'LINE_NUMBER'
57657: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
57658: ,p_token_2 => 'LINE_TYPE_NAME'
57659: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
57660: l_component_type
57661: ,l_component_code
57689: --
57690: --
57691: ------------------------------------------------------------------------------------------------
57692: -- 4219869 Business Flow
57693: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
57694: -- Prior Entry. Currently, the following code is always generated.
57695: ------------------------------------------------------------------------------------------------
57696: XLA_AE_LINES_PKG.ValidateCurrentLine;
57697:
57692: -- 4219869 Business Flow
57693: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
57694: -- Prior Entry. Currently, the following code is always generated.
57695: ------------------------------------------------------------------------------------------------
57696: XLA_AE_LINES_PKG.ValidateCurrentLine;
57697:
57698: ------------------------------------------------------------------------------------
57699: -- 4219869 Business Flow
57700: -- Populated credit and debit amounts -- Need to generate this within IF
57698: ------------------------------------------------------------------------------------
57699: -- 4219869 Business Flow
57700: -- Populated credit and debit amounts -- Need to generate this within IF
57701: ------------------------------------------------------------------------------------
57702: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
57703:
57704: ----------------------------------------------------------------------------------
57705: -- 4219869 Business Flow
57706: -- Update journal entry status -- Need to generate this within IF
57730: -- To allow MPA report to determine if it should generate report process
57731: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
57732: ------------------------------------------------------------------------------------------
57733:
57734: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
57735: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
57736: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
57737: -- call ADRs
57738: -- Bug 4922099
57731: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
57732: ------------------------------------------------------------------------------------------
57733:
57734: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
57735: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
57736: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
57737: -- call ADRs
57738: -- Bug 4922099
57739: --
57755: , x_value_type_code => l_adr_value_type_code
57756: , p_side => 'NA'
57757: );
57758:
57759: xla_ae_lines_pkg.set_ccid(
57760: p_code_combination_id => l_ccid
57761: , p_value_type_code => l_adr_value_type_code
57762: , p_transaction_coa_id => l_adr_transaction_coa_id
57763: , p_accounting_coa_id => l_adr_accounting_coa_id
57778:
57779: --
57780: -- Update the line information that should be overwritten
57781: --
57782: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
57783: p_header_num => 1);
57784: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
57785:
57786: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
57780: -- Update the line information that should be overwritten
57781: --
57782: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
57783: p_header_num => 1);
57784: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
57785:
57786: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
57787:
57788: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
57782: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
57783: p_header_num => 1);
57784: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
57785:
57786: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
57787:
57788: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
57789: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
57790: END IF;
57785:
57786: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
57787:
57788: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
57789: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
57790: END IF;
57791:
57792: --
57793: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
57792: --
57793: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
57794: --
57795: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
57796: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
57797: ELSE
57798: ---------------------------------------------------------------------------------------------------
57799: -- 4262811a Switch Sign
57800: ---------------------------------------------------------------------------------------------------
57797: ELSE
57798: ---------------------------------------------------------------------------------------------------
57799: -- 4262811a Switch Sign
57800: ---------------------------------------------------------------------------------------------------
57801: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
57802: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57803: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57804: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57805: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57798: ---------------------------------------------------------------------------------------------------
57799: -- 4262811a Switch Sign
57800: ---------------------------------------------------------------------------------------------------
57801: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
57802: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57803: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57804: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57805: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57806: -- 5132302
57799: -- 4262811a Switch Sign
57800: ---------------------------------------------------------------------------------------------------
57801: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
57802: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57803: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57804: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57805: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57806: -- 5132302
57807: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
57800: ---------------------------------------------------------------------------------------------------
57801: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
57802: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57803: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57804: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57805: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57806: -- 5132302
57807: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
57808: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57801: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
57802: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57803: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57804: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57805: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57806: -- 5132302
57807: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
57808: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57809:
57803: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57804: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57805: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57806: -- 5132302
57807: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
57808: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57809:
57810: END IF;
57811:
57804: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57805: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57806: -- 5132302
57807: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
57808: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57809:
57810: END IF;
57811:
57812: -- 4955764
57809:
57810: END IF;
57811:
57812: -- 4955764
57813: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
57814: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
57815:
57816:
57817: XLA_AE_LINES_PKG.ValidateCurrentLine;
57813: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
57814: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
57815:
57816:
57817: XLA_AE_LINES_PKG.ValidateCurrentLine;
57818: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
57819:
57820: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
57821: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
57814: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
57815:
57816:
57817: XLA_AE_LINES_PKG.ValidateCurrentLine;
57818: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
57819:
57820: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
57821: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
57822: ,p_balance_type_code => l_balance_type_code);
57969: --
57970: -- bulk performance
57971: --
57972: l_balance_type_code VARCHAR2(1);
57973: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
57974: l_log_module VARCHAR2(240);
57975:
57976: --
57977: -- Upgrade strategy
58041: ') = 'N'
58042: THEN
58043:
58044: --
58045: XLA_AE_LINES_PKG.SetNewLine;
58046:
58047: p_balance_type_code := l_balance_type_code;
58048: -- set the flag so later we will know whether the gain loss line needs to be created
58049:
58053:
58054: --
58055: -- bulk performance
58056: --
58057: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
58058: p_header_num => 0); -- 4262811
58059: --
58060: -- set accounting line options
58061: --
58058: p_header_num => 0); -- 4262811
58059: --
58060: -- set accounting line options
58061: --
58062: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
58063: p_natural_side_code => 'C'
58064: , p_gain_or_loss_flag => 'N'
58065: , p_gl_transfer_mode_code => 'S'
58066: , p_acct_entry_type_code => 'A'
58072: --
58073: --
58074: -- set accounting line type info
58075: --
58076: xla_ae_lines_pkg.SetAcctLineType
58077: (p_component_type => l_component_type
58078: ,p_event_type_code => l_event_type_code
58079: ,p_line_definition_owner_code => l_line_definition_owner_code
58080: ,p_line_definition_code => l_line_definition_code
58086: ,p_event_class_code => l_event_class_code);
58087: --
58088: -- set accounting class
58089: --
58090: xla_ae_lines_pkg.SetAcctClass(
58091: p_accounting_class_code => 'REM_BR'
58092: , p_ae_header_id => l_ae_header_id
58093: );
58094:
58094:
58095: --
58096: -- set rounding class
58097: --
58098: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
58099: 'RECEIVABLE';
58100:
58101: --
58102: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
58098: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
58099: 'RECEIVABLE';
58100:
58101: --
58102: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
58103: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
58104: --
58105: -- bulk performance
58106: --
58099: 'RECEIVABLE';
58100:
58101: --
58102: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
58103: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
58104: --
58105: -- bulk performance
58106: --
58107: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
58103: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
58104: --
58105: -- bulk performance
58106: --
58107: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
58108:
58109: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
58110: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
58111:
58105: -- bulk performance
58106: --
58107: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
58108:
58109: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
58110: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
58111:
58112: -- 4955764
58113: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
58109: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
58110: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
58111:
58112: -- 4955764
58113: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
58114: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
58115:
58116: -- 4458381 Public Sector Enh
58117:
58153: l_rec_acct_attrs.array_num_value(15) := p_source_98;
58154: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
58155: l_rec_acct_attrs.array_char_value(16) := p_source_99;
58156:
58157: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
58158: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
58159:
58160: ---------------------------------------------------------------------------------------------------------------
58161: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
58154: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
58155: l_rec_acct_attrs.array_char_value(16) := p_source_99;
58156:
58157: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
58158: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
58159:
58160: ---------------------------------------------------------------------------------------------------------------
58161: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
58162: ---------------------------------------------------------------------------------------------------------------
58157: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
58158: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
58159:
58160: ---------------------------------------------------------------------------------------------------------------
58161: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
58162: ---------------------------------------------------------------------------------------------------------------
58163: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
58164:
58165: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58159:
58160: ---------------------------------------------------------------------------------------------------------------
58161: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
58162: ---------------------------------------------------------------------------------------------------------------
58163: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
58164:
58165: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58166: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58167:
58161: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
58162: ---------------------------------------------------------------------------------------------------------------
58163: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
58164:
58165: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58166: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58167:
58168: IF xla_accounting_cache_pkg.GetValueChar
58169: (p_source_code => 'LEDGER_CATEGORY_CODE'
58162: ---------------------------------------------------------------------------------------------------------------
58163: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
58164:
58165: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58166: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58167:
58168: IF xla_accounting_cache_pkg.GetValueChar
58169: (p_source_code => 'LEDGER_CATEGORY_CODE'
58170: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
58173: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
58174: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
58175: )
58176: THEN
58177: xla_ae_lines_pkg.BflowUpgEntry
58178: (p_business_method_code => l_bflow_method_code
58179: ,p_business_class_code => l_bflow_class_code
58180: ,p_balance_type => l_balance_type_code);
58181: ELSE
58187: -- call analytical criteria
58188: --
58189:
58190:
58191: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
58192: xla_ae_lines_pkg.SetAnalyticalCriteria(
58193: p_analytical_criterion_name => 'Check Id'
58194: , p_analytical_criterion_owner => 'S'
58195: , p_analytical_criterion_code => 'CHECK_ID'
58188: --
58189:
58190:
58191: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
58192: xla_ae_lines_pkg.SetAnalyticalCriteria(
58193: p_analytical_criterion_name => 'Check Id'
58194: , p_analytical_criterion_owner => 'S'
58195: , p_analytical_criterion_code => 'CHECK_ID'
58196: , p_amb_context_code => 'DEFAULT'
58231: , x_value_type_code => l_adr_value_type_code
58232: , p_side => 'NA'
58233: );
58234:
58235: xla_ae_lines_pkg.set_ccid(
58236: p_code_combination_id => l_ccid
58237: , p_value_type_code => l_adr_value_type_code
58238: , p_transaction_coa_id => l_adr_transaction_coa_id
58239: , p_accounting_coa_id => l_adr_accounting_coa_id
58267: xla_accounting_err_pkg.build_message
58268: (p_appli_s_name => 'XLA'
58269: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
58270: ,p_token_1 => 'LINE_NUMBER'
58271: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
58272: ,p_token_2 => 'LINE_TYPE_NAME'
58273: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
58274: l_component_type
58275: ,l_component_code
58303: --
58304: --
58305: ------------------------------------------------------------------------------------------------
58306: -- 4219869 Business Flow
58307: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
58308: -- Prior Entry. Currently, the following code is always generated.
58309: ------------------------------------------------------------------------------------------------
58310: XLA_AE_LINES_PKG.ValidateCurrentLine;
58311:
58306: -- 4219869 Business Flow
58307: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
58308: -- Prior Entry. Currently, the following code is always generated.
58309: ------------------------------------------------------------------------------------------------
58310: XLA_AE_LINES_PKG.ValidateCurrentLine;
58311:
58312: ------------------------------------------------------------------------------------
58313: -- 4219869 Business Flow
58314: -- Populated credit and debit amounts -- Need to generate this within IF
58312: ------------------------------------------------------------------------------------
58313: -- 4219869 Business Flow
58314: -- Populated credit and debit amounts -- Need to generate this within IF
58315: ------------------------------------------------------------------------------------
58316: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
58317:
58318: ----------------------------------------------------------------------------------
58319: -- 4219869 Business Flow
58320: -- Update journal entry status -- Need to generate this within IF
58344: -- To allow MPA report to determine if it should generate report process
58345: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
58346: ------------------------------------------------------------------------------------------
58347:
58348: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
58349: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
58350: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
58351: -- call ADRs
58352: -- Bug 4922099
58345: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
58346: ------------------------------------------------------------------------------------------
58347:
58348: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
58349: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
58350: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
58351: -- call ADRs
58352: -- Bug 4922099
58353: --
58369: , x_value_type_code => l_adr_value_type_code
58370: , p_side => 'NA'
58371: );
58372:
58373: xla_ae_lines_pkg.set_ccid(
58374: p_code_combination_id => l_ccid
58375: , p_value_type_code => l_adr_value_type_code
58376: , p_transaction_coa_id => l_adr_transaction_coa_id
58377: , p_accounting_coa_id => l_adr_accounting_coa_id
58392:
58393: --
58394: -- Update the line information that should be overwritten
58395: --
58396: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
58397: p_header_num => 1);
58398: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
58399:
58400: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
58394: -- Update the line information that should be overwritten
58395: --
58396: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
58397: p_header_num => 1);
58398: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
58399:
58400: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
58401:
58402: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
58396: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
58397: p_header_num => 1);
58398: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
58399:
58400: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
58401:
58402: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
58403: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
58404: END IF;
58399:
58400: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
58401:
58402: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
58403: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
58404: END IF;
58405:
58406: --
58407: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
58406: --
58407: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
58408: --
58409: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
58410: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
58411: ELSE
58412: ---------------------------------------------------------------------------------------------------
58413: -- 4262811a Switch Sign
58414: ---------------------------------------------------------------------------------------------------
58411: ELSE
58412: ---------------------------------------------------------------------------------------------------
58413: -- 4262811a Switch Sign
58414: ---------------------------------------------------------------------------------------------------
58415: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
58416: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58417: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58418: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58419: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58412: ---------------------------------------------------------------------------------------------------
58413: -- 4262811a Switch Sign
58414: ---------------------------------------------------------------------------------------------------
58415: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
58416: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58417: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58418: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58419: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58420: -- 5132302
58413: -- 4262811a Switch Sign
58414: ---------------------------------------------------------------------------------------------------
58415: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
58416: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58417: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58418: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58419: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58420: -- 5132302
58421: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
58414: ---------------------------------------------------------------------------------------------------
58415: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
58416: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58417: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58418: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58419: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58420: -- 5132302
58421: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
58422: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58415: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
58416: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58417: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58418: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58419: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58420: -- 5132302
58421: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
58422: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58423:
58417: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58418: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58419: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58420: -- 5132302
58421: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
58422: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58423:
58424: END IF;
58425:
58418: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58419: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58420: -- 5132302
58421: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
58422: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58423:
58424: END IF;
58425:
58426: -- 4955764
58423:
58424: END IF;
58425:
58426: -- 4955764
58427: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
58428: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
58429:
58430:
58431: XLA_AE_LINES_PKG.ValidateCurrentLine;
58427: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
58428: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
58429:
58430:
58431: XLA_AE_LINES_PKG.ValidateCurrentLine;
58432: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
58433:
58434: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
58435: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
58428: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
58429:
58430:
58431: XLA_AE_LINES_PKG.ValidateCurrentLine;
58432: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
58433:
58434: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
58435: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
58436: ,p_balance_type_code => l_balance_type_code);
58581: --
58582: -- bulk performance
58583: --
58584: l_balance_type_code VARCHAR2(1);
58585: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
58586: l_log_module VARCHAR2(240);
58587:
58588: --
58589: -- Upgrade strategy
58651: ') = 'N'
58652: THEN
58653:
58654: --
58655: XLA_AE_LINES_PKG.SetNewLine;
58656:
58657: p_balance_type_code := l_balance_type_code;
58658: -- set the flag so later we will know whether the gain loss line needs to be created
58659:
58663:
58664: --
58665: -- bulk performance
58666: --
58667: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
58668: p_header_num => 0); -- 4262811
58669: --
58670: -- set accounting line options
58671: --
58668: p_header_num => 0); -- 4262811
58669: --
58670: -- set accounting line options
58671: --
58672: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
58673: p_natural_side_code => 'C'
58674: , p_gain_or_loss_flag => 'N'
58675: , p_gl_transfer_mode_code => 'S'
58676: , p_acct_entry_type_code => 'A'
58682: --
58683: --
58684: -- set accounting line type info
58685: --
58686: xla_ae_lines_pkg.SetAcctLineType
58687: (p_component_type => l_component_type
58688: ,p_event_type_code => l_event_type_code
58689: ,p_line_definition_owner_code => l_line_definition_owner_code
58690: ,p_line_definition_code => l_line_definition_code
58696: ,p_event_class_code => l_event_class_code);
58697: --
58698: -- set accounting class
58699: --
58700: xla_ae_lines_pkg.SetAcctClass(
58701: p_accounting_class_code => 'TAX'
58702: , p_ae_header_id => l_ae_header_id
58703: );
58704:
58704:
58705: --
58706: -- set rounding class
58707: --
58708: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
58709: 'RECEIVABLE';
58710:
58711: --
58712: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
58708: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
58709: 'RECEIVABLE';
58710:
58711: --
58712: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
58713: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
58714: --
58715: -- bulk performance
58716: --
58709: 'RECEIVABLE';
58710:
58711: --
58712: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
58713: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
58714: --
58715: -- bulk performance
58716: --
58717: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
58713: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
58714: --
58715: -- bulk performance
58716: --
58717: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
58718:
58719: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
58720: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
58721:
58715: -- bulk performance
58716: --
58717: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
58718:
58719: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
58720: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
58721:
58722: -- 4955764
58723: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
58719: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
58720: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
58721:
58722: -- 4955764
58723: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
58724: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
58725:
58726: -- 4458381 Public Sector Enh
58727:
58763: l_rec_acct_attrs.array_num_value(15) := p_source_98;
58764: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
58765: l_rec_acct_attrs.array_char_value(16) := p_source_99;
58766:
58767: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
58768: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
58769:
58770: ---------------------------------------------------------------------------------------------------------------
58771: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
58764: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
58765: l_rec_acct_attrs.array_char_value(16) := p_source_99;
58766:
58767: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
58768: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
58769:
58770: ---------------------------------------------------------------------------------------------------------------
58771: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
58772: ---------------------------------------------------------------------------------------------------------------
58767: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
58768: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
58769:
58770: ---------------------------------------------------------------------------------------------------------------
58771: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
58772: ---------------------------------------------------------------------------------------------------------------
58773: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
58774:
58775: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58769:
58770: ---------------------------------------------------------------------------------------------------------------
58771: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
58772: ---------------------------------------------------------------------------------------------------------------
58773: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
58774:
58775: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58776: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58777:
58771: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
58772: ---------------------------------------------------------------------------------------------------------------
58773: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
58774:
58775: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58776: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58777:
58778: IF xla_accounting_cache_pkg.GetValueChar
58779: (p_source_code => 'LEDGER_CATEGORY_CODE'
58772: ---------------------------------------------------------------------------------------------------------------
58773: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
58774:
58775: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58776: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58777:
58778: IF xla_accounting_cache_pkg.GetValueChar
58779: (p_source_code => 'LEDGER_CATEGORY_CODE'
58780: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
58783: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
58784: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
58785: )
58786: THEN
58787: xla_ae_lines_pkg.BflowUpgEntry
58788: (p_business_method_code => l_bflow_method_code
58789: ,p_business_class_code => l_bflow_class_code
58790: ,p_balance_type => l_balance_type_code);
58791: ELSE
58797: -- call analytical criteria
58798: --
58799:
58800:
58801: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
58802: xla_ae_lines_pkg.SetAnalyticalCriteria(
58803: p_analytical_criterion_name => 'Check Id'
58804: , p_analytical_criterion_owner => 'S'
58805: , p_analytical_criterion_code => 'CHECK_ID'
58798: --
58799:
58800:
58801: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
58802: xla_ae_lines_pkg.SetAnalyticalCriteria(
58803: p_analytical_criterion_name => 'Check Id'
58804: , p_analytical_criterion_owner => 'S'
58805: , p_analytical_criterion_code => 'CHECK_ID'
58806: , p_amb_context_code => 'DEFAULT'
58841: , x_value_type_code => l_adr_value_type_code
58842: , p_side => 'NA'
58843: );
58844:
58845: xla_ae_lines_pkg.set_ccid(
58846: p_code_combination_id => l_ccid
58847: , p_value_type_code => l_adr_value_type_code
58848: , p_transaction_coa_id => l_adr_transaction_coa_id
58849: , p_accounting_coa_id => l_adr_accounting_coa_id
58877: xla_accounting_err_pkg.build_message
58878: (p_appli_s_name => 'XLA'
58879: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
58880: ,p_token_1 => 'LINE_NUMBER'
58881: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
58882: ,p_token_2 => 'LINE_TYPE_NAME'
58883: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
58884: l_component_type
58885: ,l_component_code
58913: --
58914: --
58915: ------------------------------------------------------------------------------------------------
58916: -- 4219869 Business Flow
58917: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
58918: -- Prior Entry. Currently, the following code is always generated.
58919: ------------------------------------------------------------------------------------------------
58920: XLA_AE_LINES_PKG.ValidateCurrentLine;
58921:
58916: -- 4219869 Business Flow
58917: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
58918: -- Prior Entry. Currently, the following code is always generated.
58919: ------------------------------------------------------------------------------------------------
58920: XLA_AE_LINES_PKG.ValidateCurrentLine;
58921:
58922: ------------------------------------------------------------------------------------
58923: -- 4219869 Business Flow
58924: -- Populated credit and debit amounts -- Need to generate this within IF
58922: ------------------------------------------------------------------------------------
58923: -- 4219869 Business Flow
58924: -- Populated credit and debit amounts -- Need to generate this within IF
58925: ------------------------------------------------------------------------------------
58926: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
58927:
58928: ----------------------------------------------------------------------------------
58929: -- 4219869 Business Flow
58930: -- Update journal entry status -- Need to generate this within IF
58954: -- To allow MPA report to determine if it should generate report process
58955: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
58956: ------------------------------------------------------------------------------------------
58957:
58958: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
58959: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
58960: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
58961: -- call ADRs
58962: -- Bug 4922099
58955: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
58956: ------------------------------------------------------------------------------------------
58957:
58958: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
58959: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
58960: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
58961: -- call ADRs
58962: -- Bug 4922099
58963: --
58979: , x_value_type_code => l_adr_value_type_code
58980: , p_side => 'NA'
58981: );
58982:
58983: xla_ae_lines_pkg.set_ccid(
58984: p_code_combination_id => l_ccid
58985: , p_value_type_code => l_adr_value_type_code
58986: , p_transaction_coa_id => l_adr_transaction_coa_id
58987: , p_accounting_coa_id => l_adr_accounting_coa_id
59002:
59003: --
59004: -- Update the line information that should be overwritten
59005: --
59006: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
59007: p_header_num => 1);
59008: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
59009:
59010: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
59004: -- Update the line information that should be overwritten
59005: --
59006: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
59007: p_header_num => 1);
59008: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
59009:
59010: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
59011:
59012: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
59006: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
59007: p_header_num => 1);
59008: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
59009:
59010: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
59011:
59012: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
59013: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
59014: END IF;
59009:
59010: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
59011:
59012: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
59013: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
59014: END IF;
59015:
59016: --
59017: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
59016: --
59017: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
59018: --
59019: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
59020: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
59021: ELSE
59022: ---------------------------------------------------------------------------------------------------
59023: -- 4262811a Switch Sign
59024: ---------------------------------------------------------------------------------------------------
59021: ELSE
59022: ---------------------------------------------------------------------------------------------------
59023: -- 4262811a Switch Sign
59024: ---------------------------------------------------------------------------------------------------
59025: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
59026: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59027: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59028: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59029: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59022: ---------------------------------------------------------------------------------------------------
59023: -- 4262811a Switch Sign
59024: ---------------------------------------------------------------------------------------------------
59025: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
59026: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59027: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59028: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59029: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59030: -- 5132302
59023: -- 4262811a Switch Sign
59024: ---------------------------------------------------------------------------------------------------
59025: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
59026: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59027: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59028: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59029: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59030: -- 5132302
59031: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
59024: ---------------------------------------------------------------------------------------------------
59025: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
59026: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59027: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59028: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59029: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59030: -- 5132302
59031: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
59032: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59025: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
59026: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59027: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59028: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59029: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59030: -- 5132302
59031: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
59032: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59033:
59027: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59028: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59029: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59030: -- 5132302
59031: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
59032: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59033:
59034: END IF;
59035:
59028: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59029: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59030: -- 5132302
59031: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
59032: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59033:
59034: END IF;
59035:
59036: -- 4955764
59033:
59034: END IF;
59035:
59036: -- 4955764
59037: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
59038: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
59039:
59040:
59041: XLA_AE_LINES_PKG.ValidateCurrentLine;
59037: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
59038: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
59039:
59040:
59041: XLA_AE_LINES_PKG.ValidateCurrentLine;
59042: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
59043:
59044: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
59045: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
59038: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
59039:
59040:
59041: XLA_AE_LINES_PKG.ValidateCurrentLine;
59042: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
59043:
59044: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
59045: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
59046: ,p_balance_type_code => l_balance_type_code);
59197: --
59198: -- bulk performance
59199: --
59200: l_balance_type_code VARCHAR2(1);
59201: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
59202: l_log_module VARCHAR2(240);
59203:
59204: --
59205: -- Upgrade strategy
59329: ') = 'NETTING')
59330: THEN
59331:
59332: --
59333: XLA_AE_LINES_PKG.SetNewLine;
59334:
59335: p_balance_type_code := l_balance_type_code;
59336: -- set the flag so later we will know whether the gain loss line needs to be created
59337:
59341:
59342: --
59343: -- bulk performance
59344: --
59345: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
59346: p_header_num => 0); -- 4262811
59347: --
59348: -- set accounting line options
59349: --
59346: p_header_num => 0); -- 4262811
59347: --
59348: -- set accounting line options
59349: --
59350: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
59351: p_natural_side_code => 'D'
59352: , p_gain_or_loss_flag => 'N'
59353: , p_gl_transfer_mode_code => 'S'
59354: , p_acct_entry_type_code => 'A'
59360: --
59361: --
59362: -- set accounting line type info
59363: --
59364: xla_ae_lines_pkg.SetAcctLineType
59365: (p_component_type => l_component_type
59366: ,p_event_type_code => l_event_type_code
59367: ,p_line_definition_owner_code => l_line_definition_owner_code
59368: ,p_line_definition_code => l_line_definition_code
59374: ,p_event_class_code => l_event_class_code);
59375: --
59376: -- set accounting class
59377: --
59378: xla_ae_lines_pkg.SetAcctClass(
59379: p_accounting_class_code => 'UNAPP'
59380: , p_ae_header_id => l_ae_header_id
59381: );
59382:
59382:
59383: --
59384: -- set rounding class
59385: --
59386: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
59387: 'RECEIVABLE';
59388:
59389: --
59390: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
59386: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
59387: 'RECEIVABLE';
59388:
59389: --
59390: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
59391: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
59392: --
59393: -- bulk performance
59394: --
59387: 'RECEIVABLE';
59388:
59389: --
59390: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
59391: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
59392: --
59393: -- bulk performance
59394: --
59395: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
59391: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
59392: --
59393: -- bulk performance
59394: --
59395: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
59396:
59397: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
59398: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
59399:
59393: -- bulk performance
59394: --
59395: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
59396:
59397: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
59398: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
59399:
59400: -- 4955764
59401: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
59397: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
59398: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
59399:
59400: -- 4955764
59401: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
59402: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
59403:
59404: -- 4458381 Public Sector Enh
59405:
59441: l_rec_acct_attrs.array_num_value(15) := p_source_105;
59442: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
59443: l_rec_acct_attrs.array_char_value(16) := p_source_99;
59444:
59445: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
59446: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
59447:
59448: ---------------------------------------------------------------------------------------------------------------
59449: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
59442: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
59443: l_rec_acct_attrs.array_char_value(16) := p_source_99;
59444:
59445: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
59446: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
59447:
59448: ---------------------------------------------------------------------------------------------------------------
59449: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
59450: ---------------------------------------------------------------------------------------------------------------
59445: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
59446: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
59447:
59448: ---------------------------------------------------------------------------------------------------------------
59449: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
59450: ---------------------------------------------------------------------------------------------------------------
59451: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
59452:
59453: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59447:
59448: ---------------------------------------------------------------------------------------------------------------
59449: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
59450: ---------------------------------------------------------------------------------------------------------------
59451: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
59452:
59453: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59454: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59455:
59449: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
59450: ---------------------------------------------------------------------------------------------------------------
59451: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
59452:
59453: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59454: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59455:
59456: IF xla_accounting_cache_pkg.GetValueChar
59457: (p_source_code => 'LEDGER_CATEGORY_CODE'
59450: ---------------------------------------------------------------------------------------------------------------
59451: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
59452:
59453: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59454: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59455:
59456: IF xla_accounting_cache_pkg.GetValueChar
59457: (p_source_code => 'LEDGER_CATEGORY_CODE'
59458: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
59461: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
59462: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
59463: )
59464: THEN
59465: xla_ae_lines_pkg.BflowUpgEntry
59466: (p_business_method_code => l_bflow_method_code
59467: ,p_business_class_code => l_bflow_class_code
59468: ,p_balance_type => l_balance_type_code);
59469: ELSE
59475: -- call analytical criteria
59476: --
59477:
59478:
59479: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
59480: xla_ae_lines_pkg.SetAnalyticalCriteria(
59481: p_analytical_criterion_name => 'Check Id'
59482: , p_analytical_criterion_owner => 'S'
59483: , p_analytical_criterion_code => 'CHECK_ID'
59476: --
59477:
59478:
59479: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
59480: xla_ae_lines_pkg.SetAnalyticalCriteria(
59481: p_analytical_criterion_name => 'Check Id'
59482: , p_analytical_criterion_owner => 'S'
59483: , p_analytical_criterion_code => 'CHECK_ID'
59484: , p_amb_context_code => 'DEFAULT'
59493: ;
59494: --
59495:
59496:
59497: xla_ae_lines_pkg.g_rec_lines.array_anc_id_2(xla_ae_lines_pkg.g_LineNumber) :=
59498: xla_ae_lines_pkg.SetAnalyticalCriteria(
59499: p_analytical_criterion_name => 'Receipt Application Status'
59500: , p_analytical_criterion_owner => 'S'
59501: , p_analytical_criterion_code => 'RECEIPT_APPLICATION_STATUS'
59494: --
59495:
59496:
59497: xla_ae_lines_pkg.g_rec_lines.array_anc_id_2(xla_ae_lines_pkg.g_LineNumber) :=
59498: xla_ae_lines_pkg.SetAnalyticalCriteria(
59499: p_analytical_criterion_name => 'Receipt Application Status'
59500: , p_analytical_criterion_owner => 'S'
59501: , p_analytical_criterion_code => 'RECEIPT_APPLICATION_STATUS'
59502: , p_amb_context_code => 'DEFAULT'
59537: , x_value_type_code => l_adr_value_type_code
59538: , p_side => 'NA'
59539: );
59540:
59541: xla_ae_lines_pkg.set_ccid(
59542: p_code_combination_id => l_ccid
59543: , p_value_type_code => l_adr_value_type_code
59544: , p_transaction_coa_id => l_adr_transaction_coa_id
59545: , p_accounting_coa_id => l_adr_accounting_coa_id
59573: xla_accounting_err_pkg.build_message
59574: (p_appli_s_name => 'XLA'
59575: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
59576: ,p_token_1 => 'LINE_NUMBER'
59577: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
59578: ,p_token_2 => 'LINE_TYPE_NAME'
59579: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
59580: l_component_type
59581: ,l_component_code
59609: --
59610: --
59611: ------------------------------------------------------------------------------------------------
59612: -- 4219869 Business Flow
59613: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
59614: -- Prior Entry. Currently, the following code is always generated.
59615: ------------------------------------------------------------------------------------------------
59616: XLA_AE_LINES_PKG.ValidateCurrentLine;
59617:
59612: -- 4219869 Business Flow
59613: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
59614: -- Prior Entry. Currently, the following code is always generated.
59615: ------------------------------------------------------------------------------------------------
59616: XLA_AE_LINES_PKG.ValidateCurrentLine;
59617:
59618: ------------------------------------------------------------------------------------
59619: -- 4219869 Business Flow
59620: -- Populated credit and debit amounts -- Need to generate this within IF
59618: ------------------------------------------------------------------------------------
59619: -- 4219869 Business Flow
59620: -- Populated credit and debit amounts -- Need to generate this within IF
59621: ------------------------------------------------------------------------------------
59622: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
59623:
59624: ----------------------------------------------------------------------------------
59625: -- 4219869 Business Flow
59626: -- Update journal entry status -- Need to generate this within IF
59650: -- To allow MPA report to determine if it should generate report process
59651: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
59652: ------------------------------------------------------------------------------------------
59653:
59654: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
59655: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
59656: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
59657: -- call ADRs
59658: -- Bug 4922099
59651: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
59652: ------------------------------------------------------------------------------------------
59653:
59654: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
59655: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
59656: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
59657: -- call ADRs
59658: -- Bug 4922099
59659: --
59675: , x_value_type_code => l_adr_value_type_code
59676: , p_side => 'NA'
59677: );
59678:
59679: xla_ae_lines_pkg.set_ccid(
59680: p_code_combination_id => l_ccid
59681: , p_value_type_code => l_adr_value_type_code
59682: , p_transaction_coa_id => l_adr_transaction_coa_id
59683: , p_accounting_coa_id => l_adr_accounting_coa_id
59698:
59699: --
59700: -- Update the line information that should be overwritten
59701: --
59702: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
59703: p_header_num => 1);
59704: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
59705:
59706: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
59700: -- Update the line information that should be overwritten
59701: --
59702: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
59703: p_header_num => 1);
59704: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
59705:
59706: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
59707:
59708: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
59702: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
59703: p_header_num => 1);
59704: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
59705:
59706: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
59707:
59708: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
59709: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
59710: END IF;
59705:
59706: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
59707:
59708: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
59709: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
59710: END IF;
59711:
59712: --
59713: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
59712: --
59713: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
59714: --
59715: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
59716: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
59717: ELSE
59718: ---------------------------------------------------------------------------------------------------
59719: -- 4262811a Switch Sign
59720: ---------------------------------------------------------------------------------------------------
59717: ELSE
59718: ---------------------------------------------------------------------------------------------------
59719: -- 4262811a Switch Sign
59720: ---------------------------------------------------------------------------------------------------
59721: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
59722: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59723: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59724: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59725: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59718: ---------------------------------------------------------------------------------------------------
59719: -- 4262811a Switch Sign
59720: ---------------------------------------------------------------------------------------------------
59721: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
59722: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59723: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59724: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59725: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59726: -- 5132302
59719: -- 4262811a Switch Sign
59720: ---------------------------------------------------------------------------------------------------
59721: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
59722: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59723: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59724: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59725: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59726: -- 5132302
59727: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
59720: ---------------------------------------------------------------------------------------------------
59721: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
59722: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59723: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59724: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59725: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59726: -- 5132302
59727: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
59728: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59721: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
59722: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59723: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59724: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59725: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59726: -- 5132302
59727: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
59728: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59729:
59723: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59724: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59725: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59726: -- 5132302
59727: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
59728: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59729:
59730: END IF;
59731:
59724: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59725: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59726: -- 5132302
59727: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
59728: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59729:
59730: END IF;
59731:
59732: -- 4955764
59729:
59730: END IF;
59731:
59732: -- 4955764
59733: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
59734: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
59735:
59736:
59737: XLA_AE_LINES_PKG.ValidateCurrentLine;
59733: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
59734: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
59735:
59736:
59737: XLA_AE_LINES_PKG.ValidateCurrentLine;
59738: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
59739:
59740: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
59741: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
59734: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
59735:
59736:
59737: XLA_AE_LINES_PKG.ValidateCurrentLine;
59738: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
59739:
59740: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
59741: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
59742: ,p_balance_type_code => l_balance_type_code);
59891: --
59892: -- bulk performance
59893: --
59894: l_balance_type_code VARCHAR2(1);
59895: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
59896: l_log_module VARCHAR2(240);
59897:
59898: --
59899: -- Upgrade strategy
60019: ') <> 'UNID'
60020: THEN
60021:
60022: --
60023: XLA_AE_LINES_PKG.SetNewLine;
60024:
60025: p_balance_type_code := l_balance_type_code;
60026: -- set the flag so later we will know whether the gain loss line needs to be created
60027:
60031:
60032: --
60033: -- bulk performance
60034: --
60035: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
60036: p_header_num => 0); -- 4262811
60037: --
60038: -- set accounting line options
60039: --
60036: p_header_num => 0); -- 4262811
60037: --
60038: -- set accounting line options
60039: --
60040: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
60041: p_natural_side_code => 'D'
60042: , p_gain_or_loss_flag => 'N'
60043: , p_gl_transfer_mode_code => 'S'
60044: , p_acct_entry_type_code => 'A'
60050: --
60051: --
60052: -- set accounting line type info
60053: --
60054: xla_ae_lines_pkg.SetAcctLineType
60055: (p_component_type => l_component_type
60056: ,p_event_type_code => l_event_type_code
60057: ,p_line_definition_owner_code => l_line_definition_owner_code
60058: ,p_line_definition_code => l_line_definition_code
60064: ,p_event_class_code => l_event_class_code);
60065: --
60066: -- set accounting class
60067: --
60068: xla_ae_lines_pkg.SetAcctClass(
60069: p_accounting_class_code => 'UNAPP'
60070: , p_ae_header_id => l_ae_header_id
60071: );
60072:
60072:
60073: --
60074: -- set rounding class
60075: --
60076: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
60077: 'RECEIVABLE';
60078:
60079: --
60080: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
60076: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
60077: 'RECEIVABLE';
60078:
60079: --
60080: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
60081: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
60082: --
60083: -- bulk performance
60084: --
60077: 'RECEIVABLE';
60078:
60079: --
60080: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
60081: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
60082: --
60083: -- bulk performance
60084: --
60085: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
60081: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
60082: --
60083: -- bulk performance
60084: --
60085: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
60086:
60087: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
60088: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
60089:
60083: -- bulk performance
60084: --
60085: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
60086:
60087: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
60088: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
60089:
60090: -- 4955764
60091: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
60087: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
60088: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
60089:
60090: -- 4955764
60091: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
60092: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
60093:
60094: -- 4458381 Public Sector Enh
60095:
60131: l_rec_acct_attrs.array_num_value(15) := p_source_105;
60132: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
60133: l_rec_acct_attrs.array_char_value(16) := p_source_99;
60134:
60135: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
60136: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
60137:
60138: ---------------------------------------------------------------------------------------------------------------
60139: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
60132: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
60133: l_rec_acct_attrs.array_char_value(16) := p_source_99;
60134:
60135: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
60136: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
60137:
60138: ---------------------------------------------------------------------------------------------------------------
60139: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
60140: ---------------------------------------------------------------------------------------------------------------
60135: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
60136: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
60137:
60138: ---------------------------------------------------------------------------------------------------------------
60139: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
60140: ---------------------------------------------------------------------------------------------------------------
60141: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
60142:
60143: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60137:
60138: ---------------------------------------------------------------------------------------------------------------
60139: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
60140: ---------------------------------------------------------------------------------------------------------------
60141: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
60142:
60143: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60144: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60145:
60139: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
60140: ---------------------------------------------------------------------------------------------------------------
60141: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
60142:
60143: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60144: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60145:
60146: IF xla_accounting_cache_pkg.GetValueChar
60147: (p_source_code => 'LEDGER_CATEGORY_CODE'
60140: ---------------------------------------------------------------------------------------------------------------
60141: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
60142:
60143: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60144: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60145:
60146: IF xla_accounting_cache_pkg.GetValueChar
60147: (p_source_code => 'LEDGER_CATEGORY_CODE'
60148: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
60151: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
60152: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
60153: )
60154: THEN
60155: xla_ae_lines_pkg.BflowUpgEntry
60156: (p_business_method_code => l_bflow_method_code
60157: ,p_business_class_code => l_bflow_class_code
60158: ,p_balance_type => l_balance_type_code);
60159: ELSE
60165: -- call analytical criteria
60166: --
60167:
60168:
60169: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
60170: xla_ae_lines_pkg.SetAnalyticalCriteria(
60171: p_analytical_criterion_name => 'Check Id'
60172: , p_analytical_criterion_owner => 'S'
60173: , p_analytical_criterion_code => 'CHECK_ID'
60166: --
60167:
60168:
60169: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
60170: xla_ae_lines_pkg.SetAnalyticalCriteria(
60171: p_analytical_criterion_name => 'Check Id'
60172: , p_analytical_criterion_owner => 'S'
60173: , p_analytical_criterion_code => 'CHECK_ID'
60174: , p_amb_context_code => 'DEFAULT'
60183: ;
60184: --
60185:
60186:
60187: xla_ae_lines_pkg.g_rec_lines.array_anc_id_2(xla_ae_lines_pkg.g_LineNumber) :=
60188: xla_ae_lines_pkg.SetAnalyticalCriteria(
60189: p_analytical_criterion_name => 'Receipt Application Status'
60190: , p_analytical_criterion_owner => 'S'
60191: , p_analytical_criterion_code => 'RECEIPT_APPLICATION_STATUS'
60184: --
60185:
60186:
60187: xla_ae_lines_pkg.g_rec_lines.array_anc_id_2(xla_ae_lines_pkg.g_LineNumber) :=
60188: xla_ae_lines_pkg.SetAnalyticalCriteria(
60189: p_analytical_criterion_name => 'Receipt Application Status'
60190: , p_analytical_criterion_owner => 'S'
60191: , p_analytical_criterion_code => 'RECEIPT_APPLICATION_STATUS'
60192: , p_amb_context_code => 'DEFAULT'
60227: , x_value_type_code => l_adr_value_type_code
60228: , p_side => 'NA'
60229: );
60230:
60231: xla_ae_lines_pkg.set_ccid(
60232: p_code_combination_id => l_ccid
60233: , p_value_type_code => l_adr_value_type_code
60234: , p_transaction_coa_id => l_adr_transaction_coa_id
60235: , p_accounting_coa_id => l_adr_accounting_coa_id
60263: xla_accounting_err_pkg.build_message
60264: (p_appli_s_name => 'XLA'
60265: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
60266: ,p_token_1 => 'LINE_NUMBER'
60267: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
60268: ,p_token_2 => 'LINE_TYPE_NAME'
60269: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
60270: l_component_type
60271: ,l_component_code
60299: --
60300: --
60301: ------------------------------------------------------------------------------------------------
60302: -- 4219869 Business Flow
60303: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
60304: -- Prior Entry. Currently, the following code is always generated.
60305: ------------------------------------------------------------------------------------------------
60306: XLA_AE_LINES_PKG.ValidateCurrentLine;
60307:
60302: -- 4219869 Business Flow
60303: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
60304: -- Prior Entry. Currently, the following code is always generated.
60305: ------------------------------------------------------------------------------------------------
60306: XLA_AE_LINES_PKG.ValidateCurrentLine;
60307:
60308: ------------------------------------------------------------------------------------
60309: -- 4219869 Business Flow
60310: -- Populated credit and debit amounts -- Need to generate this within IF
60308: ------------------------------------------------------------------------------------
60309: -- 4219869 Business Flow
60310: -- Populated credit and debit amounts -- Need to generate this within IF
60311: ------------------------------------------------------------------------------------
60312: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
60313:
60314: ----------------------------------------------------------------------------------
60315: -- 4219869 Business Flow
60316: -- Update journal entry status -- Need to generate this within IF
60340: -- To allow MPA report to determine if it should generate report process
60341: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
60342: ------------------------------------------------------------------------------------------
60343:
60344: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
60345: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
60346: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
60347: -- call ADRs
60348: -- Bug 4922099
60341: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
60342: ------------------------------------------------------------------------------------------
60343:
60344: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
60345: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
60346: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
60347: -- call ADRs
60348: -- Bug 4922099
60349: --
60365: , x_value_type_code => l_adr_value_type_code
60366: , p_side => 'NA'
60367: );
60368:
60369: xla_ae_lines_pkg.set_ccid(
60370: p_code_combination_id => l_ccid
60371: , p_value_type_code => l_adr_value_type_code
60372: , p_transaction_coa_id => l_adr_transaction_coa_id
60373: , p_accounting_coa_id => l_adr_accounting_coa_id
60388:
60389: --
60390: -- Update the line information that should be overwritten
60391: --
60392: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
60393: p_header_num => 1);
60394: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
60395:
60396: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
60390: -- Update the line information that should be overwritten
60391: --
60392: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
60393: p_header_num => 1);
60394: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
60395:
60396: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
60397:
60398: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
60392: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
60393: p_header_num => 1);
60394: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
60395:
60396: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
60397:
60398: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
60399: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
60400: END IF;
60395:
60396: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
60397:
60398: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
60399: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
60400: END IF;
60401:
60402: --
60403: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
60402: --
60403: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
60404: --
60405: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
60406: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
60407: ELSE
60408: ---------------------------------------------------------------------------------------------------
60409: -- 4262811a Switch Sign
60410: ---------------------------------------------------------------------------------------------------
60407: ELSE
60408: ---------------------------------------------------------------------------------------------------
60409: -- 4262811a Switch Sign
60410: ---------------------------------------------------------------------------------------------------
60411: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
60412: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60413: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60415: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60408: ---------------------------------------------------------------------------------------------------
60409: -- 4262811a Switch Sign
60410: ---------------------------------------------------------------------------------------------------
60411: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
60412: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60413: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60415: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60416: -- 5132302
60409: -- 4262811a Switch Sign
60410: ---------------------------------------------------------------------------------------------------
60411: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
60412: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60413: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60415: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60416: -- 5132302
60417: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
60410: ---------------------------------------------------------------------------------------------------
60411: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
60412: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60413: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60415: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60416: -- 5132302
60417: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
60418: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60411: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
60412: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60413: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60415: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60416: -- 5132302
60417: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
60418: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60419:
60413: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60415: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60416: -- 5132302
60417: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
60418: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60419:
60420: END IF;
60421:
60414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60415: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60416: -- 5132302
60417: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
60418: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60419:
60420: END IF;
60421:
60422: -- 4955764
60419:
60420: END IF;
60421:
60422: -- 4955764
60423: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
60424: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
60425:
60426:
60427: XLA_AE_LINES_PKG.ValidateCurrentLine;
60423: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
60424: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
60425:
60426:
60427: XLA_AE_LINES_PKG.ValidateCurrentLine;
60428: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
60429:
60430: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
60431: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
60424: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
60425:
60426:
60427: XLA_AE_LINES_PKG.ValidateCurrentLine;
60428: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
60429:
60430: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
60431: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
60432: ,p_balance_type_code => l_balance_type_code);
60577: --
60578: -- bulk performance
60579: --
60580: l_balance_type_code VARCHAR2(1);
60581: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
60582: l_log_module VARCHAR2(240);
60583:
60584: --
60585: -- Upgrade strategy
60647: ') = 'N'
60648: THEN
60649:
60650: --
60651: XLA_AE_LINES_PKG.SetNewLine;
60652:
60653: p_balance_type_code := l_balance_type_code;
60654: -- set the flag so later we will know whether the gain loss line needs to be created
60655:
60659:
60660: --
60661: -- bulk performance
60662: --
60663: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
60664: p_header_num => 0); -- 4262811
60665: --
60666: -- set accounting line options
60667: --
60664: p_header_num => 0); -- 4262811
60665: --
60666: -- set accounting line options
60667: --
60668: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
60669: p_natural_side_code => 'C'
60670: , p_gain_or_loss_flag => 'N'
60671: , p_gl_transfer_mode_code => 'S'
60672: , p_acct_entry_type_code => 'A'
60678: --
60679: --
60680: -- set accounting line type info
60681: --
60682: xla_ae_lines_pkg.SetAcctLineType
60683: (p_component_type => l_component_type
60684: ,p_event_type_code => l_event_type_code
60685: ,p_line_definition_owner_code => l_line_definition_owner_code
60686: ,p_line_definition_code => l_line_definition_code
60692: ,p_event_class_code => l_event_class_code);
60693: --
60694: -- set accounting class
60695: --
60696: xla_ae_lines_pkg.SetAcctClass(
60697: p_accounting_class_code => 'UNEDISC'
60698: , p_ae_header_id => l_ae_header_id
60699: );
60700:
60700:
60701: --
60702: -- set rounding class
60703: --
60704: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
60705: 'RECEIVABLE';
60706:
60707: --
60708: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
60704: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
60705: 'RECEIVABLE';
60706:
60707: --
60708: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
60709: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
60710: --
60711: -- bulk performance
60712: --
60705: 'RECEIVABLE';
60706:
60707: --
60708: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
60709: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
60710: --
60711: -- bulk performance
60712: --
60713: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
60709: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
60710: --
60711: -- bulk performance
60712: --
60713: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
60714:
60715: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
60716: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
60717:
60711: -- bulk performance
60712: --
60713: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
60714:
60715: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
60716: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
60717:
60718: -- 4955764
60719: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
60715: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
60716: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
60717:
60718: -- 4955764
60719: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
60720: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
60721:
60722: -- 4458381 Public Sector Enh
60723:
60759: l_rec_acct_attrs.array_num_value(15) := p_source_98;
60760: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
60761: l_rec_acct_attrs.array_char_value(16) := p_source_99;
60762:
60763: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
60764: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
60765:
60766: ---------------------------------------------------------------------------------------------------------------
60767: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
60760: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
60761: l_rec_acct_attrs.array_char_value(16) := p_source_99;
60762:
60763: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
60764: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
60765:
60766: ---------------------------------------------------------------------------------------------------------------
60767: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
60768: ---------------------------------------------------------------------------------------------------------------
60763: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
60764: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
60765:
60766: ---------------------------------------------------------------------------------------------------------------
60767: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
60768: ---------------------------------------------------------------------------------------------------------------
60769: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
60770:
60771: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60765:
60766: ---------------------------------------------------------------------------------------------------------------
60767: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
60768: ---------------------------------------------------------------------------------------------------------------
60769: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
60770:
60771: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60772: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60773:
60767: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
60768: ---------------------------------------------------------------------------------------------------------------
60769: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
60770:
60771: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60772: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60773:
60774: IF xla_accounting_cache_pkg.GetValueChar
60775: (p_source_code => 'LEDGER_CATEGORY_CODE'
60768: ---------------------------------------------------------------------------------------------------------------
60769: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
60770:
60771: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60772: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60773:
60774: IF xla_accounting_cache_pkg.GetValueChar
60775: (p_source_code => 'LEDGER_CATEGORY_CODE'
60776: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
60779: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
60780: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
60781: )
60782: THEN
60783: xla_ae_lines_pkg.BflowUpgEntry
60784: (p_business_method_code => l_bflow_method_code
60785: ,p_business_class_code => l_bflow_class_code
60786: ,p_balance_type => l_balance_type_code);
60787: ELSE
60793: -- call analytical criteria
60794: --
60795:
60796:
60797: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
60798: xla_ae_lines_pkg.SetAnalyticalCriteria(
60799: p_analytical_criterion_name => 'Check Id'
60800: , p_analytical_criterion_owner => 'S'
60801: , p_analytical_criterion_code => 'CHECK_ID'
60794: --
60795:
60796:
60797: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
60798: xla_ae_lines_pkg.SetAnalyticalCriteria(
60799: p_analytical_criterion_name => 'Check Id'
60800: , p_analytical_criterion_owner => 'S'
60801: , p_analytical_criterion_code => 'CHECK_ID'
60802: , p_amb_context_code => 'DEFAULT'
60837: , x_value_type_code => l_adr_value_type_code
60838: , p_side => 'NA'
60839: );
60840:
60841: xla_ae_lines_pkg.set_ccid(
60842: p_code_combination_id => l_ccid
60843: , p_value_type_code => l_adr_value_type_code
60844: , p_transaction_coa_id => l_adr_transaction_coa_id
60845: , p_accounting_coa_id => l_adr_accounting_coa_id
60873: xla_accounting_err_pkg.build_message
60874: (p_appli_s_name => 'XLA'
60875: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
60876: ,p_token_1 => 'LINE_NUMBER'
60877: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
60878: ,p_token_2 => 'LINE_TYPE_NAME'
60879: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
60880: l_component_type
60881: ,l_component_code
60909: --
60910: --
60911: ------------------------------------------------------------------------------------------------
60912: -- 4219869 Business Flow
60913: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
60914: -- Prior Entry. Currently, the following code is always generated.
60915: ------------------------------------------------------------------------------------------------
60916: XLA_AE_LINES_PKG.ValidateCurrentLine;
60917:
60912: -- 4219869 Business Flow
60913: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
60914: -- Prior Entry. Currently, the following code is always generated.
60915: ------------------------------------------------------------------------------------------------
60916: XLA_AE_LINES_PKG.ValidateCurrentLine;
60917:
60918: ------------------------------------------------------------------------------------
60919: -- 4219869 Business Flow
60920: -- Populated credit and debit amounts -- Need to generate this within IF
60918: ------------------------------------------------------------------------------------
60919: -- 4219869 Business Flow
60920: -- Populated credit and debit amounts -- Need to generate this within IF
60921: ------------------------------------------------------------------------------------
60922: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
60923:
60924: ----------------------------------------------------------------------------------
60925: -- 4219869 Business Flow
60926: -- Update journal entry status -- Need to generate this within IF
60950: -- To allow MPA report to determine if it should generate report process
60951: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
60952: ------------------------------------------------------------------------------------------
60953:
60954: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
60955: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
60956: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
60957: -- call ADRs
60958: -- Bug 4922099
60951: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
60952: ------------------------------------------------------------------------------------------
60953:
60954: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
60955: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
60956: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
60957: -- call ADRs
60958: -- Bug 4922099
60959: --
60975: , x_value_type_code => l_adr_value_type_code
60976: , p_side => 'NA'
60977: );
60978:
60979: xla_ae_lines_pkg.set_ccid(
60980: p_code_combination_id => l_ccid
60981: , p_value_type_code => l_adr_value_type_code
60982: , p_transaction_coa_id => l_adr_transaction_coa_id
60983: , p_accounting_coa_id => l_adr_accounting_coa_id
60998:
60999: --
61000: -- Update the line information that should be overwritten
61001: --
61002: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
61003: p_header_num => 1);
61004: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
61005:
61006: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
61000: -- Update the line information that should be overwritten
61001: --
61002: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
61003: p_header_num => 1);
61004: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
61005:
61006: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
61007:
61008: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
61002: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
61003: p_header_num => 1);
61004: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
61005:
61006: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
61007:
61008: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
61009: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
61010: END IF;
61005:
61006: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
61007:
61008: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
61009: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
61010: END IF;
61011:
61012: --
61013: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
61012: --
61013: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
61014: --
61015: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
61016: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
61017: ELSE
61018: ---------------------------------------------------------------------------------------------------
61019: -- 4262811a Switch Sign
61020: ---------------------------------------------------------------------------------------------------
61017: ELSE
61018: ---------------------------------------------------------------------------------------------------
61019: -- 4262811a Switch Sign
61020: ---------------------------------------------------------------------------------------------------
61021: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
61022: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61023: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61024: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61025: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61018: ---------------------------------------------------------------------------------------------------
61019: -- 4262811a Switch Sign
61020: ---------------------------------------------------------------------------------------------------
61021: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
61022: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61023: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61024: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61025: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61026: -- 5132302
61019: -- 4262811a Switch Sign
61020: ---------------------------------------------------------------------------------------------------
61021: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
61022: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61023: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61024: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61025: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61026: -- 5132302
61027: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
61020: ---------------------------------------------------------------------------------------------------
61021: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
61022: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61023: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61024: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61025: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61026: -- 5132302
61027: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
61028: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61021: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
61022: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61023: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61024: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61025: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61026: -- 5132302
61027: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
61028: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61029:
61023: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61024: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61025: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61026: -- 5132302
61027: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
61028: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61029:
61030: END IF;
61031:
61024: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61025: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61026: -- 5132302
61027: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
61028: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61029:
61030: END IF;
61031:
61032: -- 4955764
61029:
61030: END IF;
61031:
61032: -- 4955764
61033: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
61034: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
61035:
61036:
61037: XLA_AE_LINES_PKG.ValidateCurrentLine;
61033: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
61034: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
61035:
61036:
61037: XLA_AE_LINES_PKG.ValidateCurrentLine;
61038: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
61039:
61040: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
61041: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
61034: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
61035:
61036:
61037: XLA_AE_LINES_PKG.ValidateCurrentLine;
61038: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
61039:
61040: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
61041: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
61042: ,p_balance_type_code => l_balance_type_code);
61187: --
61188: -- bulk performance
61189: --
61190: l_balance_type_code VARCHAR2(1);
61191: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
61192: l_log_module VARCHAR2(240);
61193:
61194: --
61195: -- Upgrade strategy
61257: ') = 'N'
61258: THEN
61259:
61260: --
61261: XLA_AE_LINES_PKG.SetNewLine;
61262:
61263: p_balance_type_code := l_balance_type_code;
61264: -- set the flag so later we will know whether the gain loss line needs to be created
61265:
61269:
61270: --
61271: -- bulk performance
61272: --
61273: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
61274: p_header_num => 0); -- 4262811
61275: --
61276: -- set accounting line options
61277: --
61274: p_header_num => 0); -- 4262811
61275: --
61276: -- set accounting line options
61277: --
61278: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
61279: p_natural_side_code => 'C'
61280: , p_gain_or_loss_flag => 'N'
61281: , p_gl_transfer_mode_code => 'S'
61282: , p_acct_entry_type_code => 'A'
61288: --
61289: --
61290: -- set accounting line type info
61291: --
61292: xla_ae_lines_pkg.SetAcctLineType
61293: (p_component_type => l_component_type
61294: ,p_event_type_code => l_event_type_code
61295: ,p_line_definition_owner_code => l_line_definition_owner_code
61296: ,p_line_definition_code => l_line_definition_code
61302: ,p_event_class_code => l_event_class_code);
61303: --
61304: -- set accounting class
61305: --
61306: xla_ae_lines_pkg.SetAcctClass(
61307: p_accounting_class_code => 'UNEDISC_NON_REC_TAX'
61308: , p_ae_header_id => l_ae_header_id
61309: );
61310:
61310:
61311: --
61312: -- set rounding class
61313: --
61314: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
61315: 'RECEIVABLE';
61316:
61317: --
61318: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
61314: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
61315: 'RECEIVABLE';
61316:
61317: --
61318: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
61319: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
61320: --
61321: -- bulk performance
61322: --
61315: 'RECEIVABLE';
61316:
61317: --
61318: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
61319: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
61320: --
61321: -- bulk performance
61322: --
61323: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
61319: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
61320: --
61321: -- bulk performance
61322: --
61323: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
61324:
61325: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
61326: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
61327:
61321: -- bulk performance
61322: --
61323: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
61324:
61325: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
61326: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
61327:
61328: -- 4955764
61329: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
61325: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
61326: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
61327:
61328: -- 4955764
61329: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
61330: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
61331:
61332: -- 4458381 Public Sector Enh
61333:
61369: l_rec_acct_attrs.array_num_value(15) := p_source_98;
61370: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
61371: l_rec_acct_attrs.array_char_value(16) := p_source_99;
61372:
61373: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
61374: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
61375:
61376: ---------------------------------------------------------------------------------------------------------------
61377: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
61370: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
61371: l_rec_acct_attrs.array_char_value(16) := p_source_99;
61372:
61373: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
61374: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
61375:
61376: ---------------------------------------------------------------------------------------------------------------
61377: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
61378: ---------------------------------------------------------------------------------------------------------------
61373: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
61374: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
61375:
61376: ---------------------------------------------------------------------------------------------------------------
61377: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
61378: ---------------------------------------------------------------------------------------------------------------
61379: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
61380:
61381: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61375:
61376: ---------------------------------------------------------------------------------------------------------------
61377: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
61378: ---------------------------------------------------------------------------------------------------------------
61379: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
61380:
61381: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61382: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61383:
61377: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
61378: ---------------------------------------------------------------------------------------------------------------
61379: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
61380:
61381: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61382: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61383:
61384: IF xla_accounting_cache_pkg.GetValueChar
61385: (p_source_code => 'LEDGER_CATEGORY_CODE'
61378: ---------------------------------------------------------------------------------------------------------------
61379: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
61380:
61381: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61382: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61383:
61384: IF xla_accounting_cache_pkg.GetValueChar
61385: (p_source_code => 'LEDGER_CATEGORY_CODE'
61386: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
61389: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
61390: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
61391: )
61392: THEN
61393: xla_ae_lines_pkg.BflowUpgEntry
61394: (p_business_method_code => l_bflow_method_code
61395: ,p_business_class_code => l_bflow_class_code
61396: ,p_balance_type => l_balance_type_code);
61397: ELSE
61403: -- call analytical criteria
61404: --
61405:
61406:
61407: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
61408: xla_ae_lines_pkg.SetAnalyticalCriteria(
61409: p_analytical_criterion_name => 'Check Id'
61410: , p_analytical_criterion_owner => 'S'
61411: , p_analytical_criterion_code => 'CHECK_ID'
61404: --
61405:
61406:
61407: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
61408: xla_ae_lines_pkg.SetAnalyticalCriteria(
61409: p_analytical_criterion_name => 'Check Id'
61410: , p_analytical_criterion_owner => 'S'
61411: , p_analytical_criterion_code => 'CHECK_ID'
61412: , p_amb_context_code => 'DEFAULT'
61447: , x_value_type_code => l_adr_value_type_code
61448: , p_side => 'NA'
61449: );
61450:
61451: xla_ae_lines_pkg.set_ccid(
61452: p_code_combination_id => l_ccid
61453: , p_value_type_code => l_adr_value_type_code
61454: , p_transaction_coa_id => l_adr_transaction_coa_id
61455: , p_accounting_coa_id => l_adr_accounting_coa_id
61483: xla_accounting_err_pkg.build_message
61484: (p_appli_s_name => 'XLA'
61485: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
61486: ,p_token_1 => 'LINE_NUMBER'
61487: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
61488: ,p_token_2 => 'LINE_TYPE_NAME'
61489: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
61490: l_component_type
61491: ,l_component_code
61519: --
61520: --
61521: ------------------------------------------------------------------------------------------------
61522: -- 4219869 Business Flow
61523: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
61524: -- Prior Entry. Currently, the following code is always generated.
61525: ------------------------------------------------------------------------------------------------
61526: XLA_AE_LINES_PKG.ValidateCurrentLine;
61527:
61522: -- 4219869 Business Flow
61523: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
61524: -- Prior Entry. Currently, the following code is always generated.
61525: ------------------------------------------------------------------------------------------------
61526: XLA_AE_LINES_PKG.ValidateCurrentLine;
61527:
61528: ------------------------------------------------------------------------------------
61529: -- 4219869 Business Flow
61530: -- Populated credit and debit amounts -- Need to generate this within IF
61528: ------------------------------------------------------------------------------------
61529: -- 4219869 Business Flow
61530: -- Populated credit and debit amounts -- Need to generate this within IF
61531: ------------------------------------------------------------------------------------
61532: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
61533:
61534: ----------------------------------------------------------------------------------
61535: -- 4219869 Business Flow
61536: -- Update journal entry status -- Need to generate this within IF
61560: -- To allow MPA report to determine if it should generate report process
61561: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
61562: ------------------------------------------------------------------------------------------
61563:
61564: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
61565: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
61566: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
61567: -- call ADRs
61568: -- Bug 4922099
61561: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
61562: ------------------------------------------------------------------------------------------
61563:
61564: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
61565: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
61566: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
61567: -- call ADRs
61568: -- Bug 4922099
61569: --
61585: , x_value_type_code => l_adr_value_type_code
61586: , p_side => 'NA'
61587: );
61588:
61589: xla_ae_lines_pkg.set_ccid(
61590: p_code_combination_id => l_ccid
61591: , p_value_type_code => l_adr_value_type_code
61592: , p_transaction_coa_id => l_adr_transaction_coa_id
61593: , p_accounting_coa_id => l_adr_accounting_coa_id
61608:
61609: --
61610: -- Update the line information that should be overwritten
61611: --
61612: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
61613: p_header_num => 1);
61614: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
61615:
61616: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
61610: -- Update the line information that should be overwritten
61611: --
61612: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
61613: p_header_num => 1);
61614: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
61615:
61616: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
61617:
61618: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
61612: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
61613: p_header_num => 1);
61614: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
61615:
61616: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
61617:
61618: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
61619: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
61620: END IF;
61615:
61616: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
61617:
61618: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
61619: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
61620: END IF;
61621:
61622: --
61623: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
61622: --
61623: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
61624: --
61625: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
61626: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
61627: ELSE
61628: ---------------------------------------------------------------------------------------------------
61629: -- 4262811a Switch Sign
61630: ---------------------------------------------------------------------------------------------------
61627: ELSE
61628: ---------------------------------------------------------------------------------------------------
61629: -- 4262811a Switch Sign
61630: ---------------------------------------------------------------------------------------------------
61631: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
61632: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61633: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61634: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61628: ---------------------------------------------------------------------------------------------------
61629: -- 4262811a Switch Sign
61630: ---------------------------------------------------------------------------------------------------
61631: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
61632: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61633: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61634: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61636: -- 5132302
61629: -- 4262811a Switch Sign
61630: ---------------------------------------------------------------------------------------------------
61631: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
61632: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61633: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61634: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61636: -- 5132302
61637: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
61630: ---------------------------------------------------------------------------------------------------
61631: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
61632: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61633: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61634: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61636: -- 5132302
61637: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
61638: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61631: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
61632: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61633: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61634: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61636: -- 5132302
61637: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
61638: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61639:
61633: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61634: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61636: -- 5132302
61637: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
61638: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61639:
61640: END IF;
61641:
61634: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61636: -- 5132302
61637: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
61638: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61639:
61640: END IF;
61641:
61642: -- 4955764
61639:
61640: END IF;
61641:
61642: -- 4955764
61643: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
61644: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
61645:
61646:
61647: XLA_AE_LINES_PKG.ValidateCurrentLine;
61643: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
61644: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
61645:
61646:
61647: XLA_AE_LINES_PKG.ValidateCurrentLine;
61648: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
61649:
61650: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
61651: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
61644: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
61645:
61646:
61647: XLA_AE_LINES_PKG.ValidateCurrentLine;
61648: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
61649:
61650: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
61651: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
61652: ,p_balance_type_code => l_balance_type_code);
61797: --
61798: -- bulk performance
61799: --
61800: l_balance_type_code VARCHAR2(1);
61801: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
61802: l_log_module VARCHAR2(240);
61803:
61804: --
61805: -- Upgrade strategy
61867: ') = 'N'
61868: THEN
61869:
61870: --
61871: XLA_AE_LINES_PKG.SetNewLine;
61872:
61873: p_balance_type_code := l_balance_type_code;
61874: -- set the flag so later we will know whether the gain loss line needs to be created
61875:
61879:
61880: --
61881: -- bulk performance
61882: --
61883: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
61884: p_header_num => 0); -- 4262811
61885: --
61886: -- set accounting line options
61887: --
61884: p_header_num => 0); -- 4262811
61885: --
61886: -- set accounting line options
61887: --
61888: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
61889: p_natural_side_code => 'C'
61890: , p_gain_or_loss_flag => 'N'
61891: , p_gl_transfer_mode_code => 'S'
61892: , p_acct_entry_type_code => 'A'
61898: --
61899: --
61900: -- set accounting line type info
61901: --
61902: xla_ae_lines_pkg.SetAcctLineType
61903: (p_component_type => l_component_type
61904: ,p_event_type_code => l_event_type_code
61905: ,p_line_definition_owner_code => l_line_definition_owner_code
61906: ,p_line_definition_code => l_line_definition_code
61912: ,p_event_class_code => l_event_class_code);
61913: --
61914: -- set accounting class
61915: --
61916: xla_ae_lines_pkg.SetAcctClass(
61917: p_accounting_class_code => 'UNID'
61918: , p_ae_header_id => l_ae_header_id
61919: );
61920:
61920:
61921: --
61922: -- set rounding class
61923: --
61924: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
61925: 'RECEIVABLE';
61926:
61927: --
61928: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
61924: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
61925: 'RECEIVABLE';
61926:
61927: --
61928: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
61929: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
61930: --
61931: -- bulk performance
61932: --
61925: 'RECEIVABLE';
61926:
61927: --
61928: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
61929: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
61930: --
61931: -- bulk performance
61932: --
61933: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
61929: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
61930: --
61931: -- bulk performance
61932: --
61933: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
61934:
61935: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
61936: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
61937:
61931: -- bulk performance
61932: --
61933: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
61934:
61935: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
61936: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
61937:
61938: -- 4955764
61939: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
61935: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
61936: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
61937:
61938: -- 4955764
61939: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
61940: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
61941:
61942: -- 4458381 Public Sector Enh
61943:
61979: l_rec_acct_attrs.array_num_value(15) := p_source_98;
61980: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
61981: l_rec_acct_attrs.array_char_value(16) := p_source_99;
61982:
61983: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
61984: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
61985:
61986: ---------------------------------------------------------------------------------------------------------------
61987: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
61980: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
61981: l_rec_acct_attrs.array_char_value(16) := p_source_99;
61982:
61983: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
61984: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
61985:
61986: ---------------------------------------------------------------------------------------------------------------
61987: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
61988: ---------------------------------------------------------------------------------------------------------------
61983: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
61984: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
61985:
61986: ---------------------------------------------------------------------------------------------------------------
61987: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
61988: ---------------------------------------------------------------------------------------------------------------
61989: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
61990:
61991: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61985:
61986: ---------------------------------------------------------------------------------------------------------------
61987: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
61988: ---------------------------------------------------------------------------------------------------------------
61989: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
61990:
61991: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61992: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61993:
61987: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
61988: ---------------------------------------------------------------------------------------------------------------
61989: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
61990:
61991: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61992: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61993:
61994: IF xla_accounting_cache_pkg.GetValueChar
61995: (p_source_code => 'LEDGER_CATEGORY_CODE'
61988: ---------------------------------------------------------------------------------------------------------------
61989: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
61990:
61991: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61992: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61993:
61994: IF xla_accounting_cache_pkg.GetValueChar
61995: (p_source_code => 'LEDGER_CATEGORY_CODE'
61996: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
61999: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
62000: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
62001: )
62002: THEN
62003: xla_ae_lines_pkg.BflowUpgEntry
62004: (p_business_method_code => l_bflow_method_code
62005: ,p_business_class_code => l_bflow_class_code
62006: ,p_balance_type => l_balance_type_code);
62007: ELSE
62013: -- call analytical criteria
62014: --
62015:
62016:
62017: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
62018: xla_ae_lines_pkg.SetAnalyticalCriteria(
62019: p_analytical_criterion_name => 'Check Id'
62020: , p_analytical_criterion_owner => 'S'
62021: , p_analytical_criterion_code => 'CHECK_ID'
62014: --
62015:
62016:
62017: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
62018: xla_ae_lines_pkg.SetAnalyticalCriteria(
62019: p_analytical_criterion_name => 'Check Id'
62020: , p_analytical_criterion_owner => 'S'
62021: , p_analytical_criterion_code => 'CHECK_ID'
62022: , p_amb_context_code => 'DEFAULT'
62031: ;
62032: --
62033:
62034:
62035: xla_ae_lines_pkg.g_rec_lines.array_anc_id_2(xla_ae_lines_pkg.g_LineNumber) :=
62036: xla_ae_lines_pkg.SetAnalyticalCriteria(
62037: p_analytical_criterion_name => 'Distribution Source Type'
62038: , p_analytical_criterion_owner => 'S'
62039: , p_analytical_criterion_code => 'DISTRIBUTION_SOURCE_TYPE'
62032: --
62033:
62034:
62035: xla_ae_lines_pkg.g_rec_lines.array_anc_id_2(xla_ae_lines_pkg.g_LineNumber) :=
62036: xla_ae_lines_pkg.SetAnalyticalCriteria(
62037: p_analytical_criterion_name => 'Distribution Source Type'
62038: , p_analytical_criterion_owner => 'S'
62039: , p_analytical_criterion_code => 'DISTRIBUTION_SOURCE_TYPE'
62040: , p_amb_context_code => 'DEFAULT'
62075: , x_value_type_code => l_adr_value_type_code
62076: , p_side => 'NA'
62077: );
62078:
62079: xla_ae_lines_pkg.set_ccid(
62080: p_code_combination_id => l_ccid
62081: , p_value_type_code => l_adr_value_type_code
62082: , p_transaction_coa_id => l_adr_transaction_coa_id
62083: , p_accounting_coa_id => l_adr_accounting_coa_id
62111: xla_accounting_err_pkg.build_message
62112: (p_appli_s_name => 'XLA'
62113: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
62114: ,p_token_1 => 'LINE_NUMBER'
62115: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
62116: ,p_token_2 => 'LINE_TYPE_NAME'
62117: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
62118: l_component_type
62119: ,l_component_code
62147: --
62148: --
62149: ------------------------------------------------------------------------------------------------
62150: -- 4219869 Business Flow
62151: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
62152: -- Prior Entry. Currently, the following code is always generated.
62153: ------------------------------------------------------------------------------------------------
62154: XLA_AE_LINES_PKG.ValidateCurrentLine;
62155:
62150: -- 4219869 Business Flow
62151: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
62152: -- Prior Entry. Currently, the following code is always generated.
62153: ------------------------------------------------------------------------------------------------
62154: XLA_AE_LINES_PKG.ValidateCurrentLine;
62155:
62156: ------------------------------------------------------------------------------------
62157: -- 4219869 Business Flow
62158: -- Populated credit and debit amounts -- Need to generate this within IF
62156: ------------------------------------------------------------------------------------
62157: -- 4219869 Business Flow
62158: -- Populated credit and debit amounts -- Need to generate this within IF
62159: ------------------------------------------------------------------------------------
62160: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
62161:
62162: ----------------------------------------------------------------------------------
62163: -- 4219869 Business Flow
62164: -- Update journal entry status -- Need to generate this within IF
62188: -- To allow MPA report to determine if it should generate report process
62189: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
62190: ------------------------------------------------------------------------------------------
62191:
62192: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
62193: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
62194: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
62195: -- call ADRs
62196: -- Bug 4922099
62189: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
62190: ------------------------------------------------------------------------------------------
62191:
62192: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
62193: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
62194: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
62195: -- call ADRs
62196: -- Bug 4922099
62197: --
62213: , x_value_type_code => l_adr_value_type_code
62214: , p_side => 'NA'
62215: );
62216:
62217: xla_ae_lines_pkg.set_ccid(
62218: p_code_combination_id => l_ccid
62219: , p_value_type_code => l_adr_value_type_code
62220: , p_transaction_coa_id => l_adr_transaction_coa_id
62221: , p_accounting_coa_id => l_adr_accounting_coa_id
62236:
62237: --
62238: -- Update the line information that should be overwritten
62239: --
62240: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
62241: p_header_num => 1);
62242: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
62243:
62244: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
62238: -- Update the line information that should be overwritten
62239: --
62240: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
62241: p_header_num => 1);
62242: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
62243:
62244: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
62245:
62246: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
62240: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
62241: p_header_num => 1);
62242: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
62243:
62244: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
62245:
62246: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
62247: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
62248: END IF;
62243:
62244: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
62245:
62246: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
62247: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
62248: END IF;
62249:
62250: --
62251: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
62250: --
62251: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
62252: --
62253: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
62254: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
62255: ELSE
62256: ---------------------------------------------------------------------------------------------------
62257: -- 4262811a Switch Sign
62258: ---------------------------------------------------------------------------------------------------
62255: ELSE
62256: ---------------------------------------------------------------------------------------------------
62257: -- 4262811a Switch Sign
62258: ---------------------------------------------------------------------------------------------------
62259: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
62260: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62261: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62262: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62263: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62256: ---------------------------------------------------------------------------------------------------
62257: -- 4262811a Switch Sign
62258: ---------------------------------------------------------------------------------------------------
62259: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
62260: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62261: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62262: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62263: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62264: -- 5132302
62257: -- 4262811a Switch Sign
62258: ---------------------------------------------------------------------------------------------------
62259: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
62260: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62261: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62262: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62263: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62264: -- 5132302
62265: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
62258: ---------------------------------------------------------------------------------------------------
62259: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
62260: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62261: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62262: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62263: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62264: -- 5132302
62265: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
62266: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62259: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
62260: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62261: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62262: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62263: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62264: -- 5132302
62265: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
62266: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62267:
62261: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62262: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62263: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62264: -- 5132302
62265: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
62266: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62267:
62268: END IF;
62269:
62262: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62263: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62264: -- 5132302
62265: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
62266: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62267:
62268: END IF;
62269:
62270: -- 4955764
62267:
62268: END IF;
62269:
62270: -- 4955764
62271: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
62272: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
62273:
62274:
62275: XLA_AE_LINES_PKG.ValidateCurrentLine;
62271: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
62272: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
62273:
62274:
62275: XLA_AE_LINES_PKG.ValidateCurrentLine;
62276: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
62277:
62278: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
62279: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
62272: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
62273:
62274:
62275: XLA_AE_LINES_PKG.ValidateCurrentLine;
62276: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
62277:
62278: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
62279: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
62280: ,p_balance_type_code => l_balance_type_code);
62429: --
62430: -- bulk performance
62431: --
62432: l_balance_type_code VARCHAR2(1);
62433: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
62434: l_log_module VARCHAR2(240);
62435:
62436: --
62437: -- Upgrade strategy
62501: ') = 'N'
62502: THEN
62503:
62504: --
62505: XLA_AE_LINES_PKG.SetNewLine;
62506:
62507: p_balance_type_code := l_balance_type_code;
62508: -- set the flag so later we will know whether the gain loss line needs to be created
62509:
62513:
62514: --
62515: -- bulk performance
62516: --
62517: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
62518: p_header_num => 0); -- 4262811
62519: --
62520: -- set accounting line options
62521: --
62518: p_header_num => 0); -- 4262811
62519: --
62520: -- set accounting line options
62521: --
62522: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
62523: p_natural_side_code => 'C'
62524: , p_gain_or_loss_flag => 'N'
62525: , p_gl_transfer_mode_code => 'S'
62526: , p_acct_entry_type_code => 'A'
62532: --
62533: --
62534: -- set accounting line type info
62535: --
62536: xla_ae_lines_pkg.SetAcctLineType
62537: (p_component_type => l_component_type
62538: ,p_event_type_code => l_event_type_code
62539: ,p_line_definition_owner_code => l_line_definition_owner_code
62540: ,p_line_definition_code => l_line_definition_code
62546: ,p_event_class_code => l_event_class_code);
62547: --
62548: -- set accounting class
62549: --
62550: xla_ae_lines_pkg.SetAcctClass(
62551: p_accounting_class_code => 'WRITE_OFF'
62552: , p_ae_header_id => l_ae_header_id
62553: );
62554:
62554:
62555: --
62556: -- set rounding class
62557: --
62558: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
62559: 'RECEIVABLE';
62560:
62561: --
62562: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
62558: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
62559: 'RECEIVABLE';
62560:
62561: --
62562: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
62563: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
62564: --
62565: -- bulk performance
62566: --
62559: 'RECEIVABLE';
62560:
62561: --
62562: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
62563: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
62564: --
62565: -- bulk performance
62566: --
62567: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
62563: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
62564: --
62565: -- bulk performance
62566: --
62567: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
62568:
62569: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
62570: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
62571:
62565: -- bulk performance
62566: --
62567: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
62568:
62569: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
62570: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
62571:
62572: -- 4955764
62573: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
62569: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
62570: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
62571:
62572: -- 4955764
62573: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
62574: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
62575:
62576: -- 4458381 Public Sector Enh
62577:
62613: l_rec_acct_attrs.array_num_value(15) := p_source_98;
62614: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
62615: l_rec_acct_attrs.array_char_value(16) := p_source_99;
62616:
62617: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
62618: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
62619:
62620: ---------------------------------------------------------------------------------------------------------------
62621: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
62614: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
62615: l_rec_acct_attrs.array_char_value(16) := p_source_99;
62616:
62617: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
62618: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
62619:
62620: ---------------------------------------------------------------------------------------------------------------
62621: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
62622: ---------------------------------------------------------------------------------------------------------------
62617: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
62618: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
62619:
62620: ---------------------------------------------------------------------------------------------------------------
62621: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
62622: ---------------------------------------------------------------------------------------------------------------
62623: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
62624:
62625: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62619:
62620: ---------------------------------------------------------------------------------------------------------------
62621: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
62622: ---------------------------------------------------------------------------------------------------------------
62623: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
62624:
62625: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62626: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62627:
62621: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
62622: ---------------------------------------------------------------------------------------------------------------
62623: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
62624:
62625: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62626: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62627:
62628: IF xla_accounting_cache_pkg.GetValueChar
62629: (p_source_code => 'LEDGER_CATEGORY_CODE'
62622: ---------------------------------------------------------------------------------------------------------------
62623: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
62624:
62625: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62626: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62627:
62628: IF xla_accounting_cache_pkg.GetValueChar
62629: (p_source_code => 'LEDGER_CATEGORY_CODE'
62630: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
62633: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
62634: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
62635: )
62636: THEN
62637: xla_ae_lines_pkg.BflowUpgEntry
62638: (p_business_method_code => l_bflow_method_code
62639: ,p_business_class_code => l_bflow_class_code
62640: ,p_balance_type => l_balance_type_code);
62641: ELSE
62647: -- call analytical criteria
62648: --
62649:
62650:
62651: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
62652: xla_ae_lines_pkg.SetAnalyticalCriteria(
62653: p_analytical_criterion_name => 'Check Id'
62654: , p_analytical_criterion_owner => 'S'
62655: , p_analytical_criterion_code => 'CHECK_ID'
62648: --
62649:
62650:
62651: xla_ae_lines_pkg.g_rec_lines.array_anc_id_1(xla_ae_lines_pkg.g_LineNumber) :=
62652: xla_ae_lines_pkg.SetAnalyticalCriteria(
62653: p_analytical_criterion_name => 'Check Id'
62654: , p_analytical_criterion_owner => 'S'
62655: , p_analytical_criterion_code => 'CHECK_ID'
62656: , p_amb_context_code => 'DEFAULT'
62665: ;
62666: --
62667:
62668:
62669: xla_ae_lines_pkg.g_rec_lines.array_anc_id_2(xla_ae_lines_pkg.g_LineNumber) :=
62670: xla_ae_lines_pkg.SetAnalyticalCriteria(
62671: p_analytical_criterion_name => 'Receivable Activity'
62672: , p_analytical_criterion_owner => 'S'
62673: , p_analytical_criterion_code => 'RECEIVABLE_ACTIVITY'
62666: --
62667:
62668:
62669: xla_ae_lines_pkg.g_rec_lines.array_anc_id_2(xla_ae_lines_pkg.g_LineNumber) :=
62670: xla_ae_lines_pkg.SetAnalyticalCriteria(
62671: p_analytical_criterion_name => 'Receivable Activity'
62672: , p_analytical_criterion_owner => 'S'
62673: , p_analytical_criterion_code => 'RECEIVABLE_ACTIVITY'
62674: , p_amb_context_code => 'DEFAULT'
62709: , x_value_type_code => l_adr_value_type_code
62710: , p_side => 'NA'
62711: );
62712:
62713: xla_ae_lines_pkg.set_ccid(
62714: p_code_combination_id => l_ccid
62715: , p_value_type_code => l_adr_value_type_code
62716: , p_transaction_coa_id => l_adr_transaction_coa_id
62717: , p_accounting_coa_id => l_adr_accounting_coa_id
62745: xla_accounting_err_pkg.build_message
62746: (p_appli_s_name => 'XLA'
62747: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
62748: ,p_token_1 => 'LINE_NUMBER'
62749: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
62750: ,p_token_2 => 'LINE_TYPE_NAME'
62751: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
62752: l_component_type
62753: ,l_component_code
62781: --
62782: --
62783: ------------------------------------------------------------------------------------------------
62784: -- 4219869 Business Flow
62785: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
62786: -- Prior Entry. Currently, the following code is always generated.
62787: ------------------------------------------------------------------------------------------------
62788: XLA_AE_LINES_PKG.ValidateCurrentLine;
62789:
62784: -- 4219869 Business Flow
62785: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
62786: -- Prior Entry. Currently, the following code is always generated.
62787: ------------------------------------------------------------------------------------------------
62788: XLA_AE_LINES_PKG.ValidateCurrentLine;
62789:
62790: ------------------------------------------------------------------------------------
62791: -- 4219869 Business Flow
62792: -- Populated credit and debit amounts -- Need to generate this within IF
62790: ------------------------------------------------------------------------------------
62791: -- 4219869 Business Flow
62792: -- Populated credit and debit amounts -- Need to generate this within IF
62793: ------------------------------------------------------------------------------------
62794: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
62795:
62796: ----------------------------------------------------------------------------------
62797: -- 4219869 Business Flow
62798: -- Update journal entry status -- Need to generate this within IF
62822: -- To allow MPA report to determine if it should generate report process
62823: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
62824: ------------------------------------------------------------------------------------------
62825:
62826: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
62827: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
62828: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
62829: -- call ADRs
62830: -- Bug 4922099
62823: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
62824: ------------------------------------------------------------------------------------------
62825:
62826: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
62827: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
62828: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
62829: -- call ADRs
62830: -- Bug 4922099
62831: --
62847: , x_value_type_code => l_adr_value_type_code
62848: , p_side => 'NA'
62849: );
62850:
62851: xla_ae_lines_pkg.set_ccid(
62852: p_code_combination_id => l_ccid
62853: , p_value_type_code => l_adr_value_type_code
62854: , p_transaction_coa_id => l_adr_transaction_coa_id
62855: , p_accounting_coa_id => l_adr_accounting_coa_id
62870:
62871: --
62872: -- Update the line information that should be overwritten
62873: --
62874: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
62875: p_header_num => 1);
62876: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
62877:
62878: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
62872: -- Update the line information that should be overwritten
62873: --
62874: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
62875: p_header_num => 1);
62876: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
62877:
62878: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
62879:
62880: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
62874: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
62875: p_header_num => 1);
62876: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
62877:
62878: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
62879:
62880: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
62881: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
62882: END IF;
62877:
62878: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
62879:
62880: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
62881: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
62882: END IF;
62883:
62884: --
62885: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
62884: --
62885: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
62886: --
62887: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
62888: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
62889: ELSE
62890: ---------------------------------------------------------------------------------------------------
62891: -- 4262811a Switch Sign
62892: ---------------------------------------------------------------------------------------------------
62889: ELSE
62890: ---------------------------------------------------------------------------------------------------
62891: -- 4262811a Switch Sign
62892: ---------------------------------------------------------------------------------------------------
62893: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
62894: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62895: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62896: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62897: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62890: ---------------------------------------------------------------------------------------------------
62891: -- 4262811a Switch Sign
62892: ---------------------------------------------------------------------------------------------------
62893: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
62894: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62895: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62896: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62897: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62898: -- 5132302
62891: -- 4262811a Switch Sign
62892: ---------------------------------------------------------------------------------------------------
62893: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
62894: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62895: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62896: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62897: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62898: -- 5132302
62899: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
62892: ---------------------------------------------------------------------------------------------------
62893: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
62894: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62895: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62896: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62897: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62898: -- 5132302
62899: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
62900: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62893: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
62894: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62895: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62896: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62897: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62898: -- 5132302
62899: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
62900: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62901:
62895: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62896: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62897: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62898: -- 5132302
62899: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
62900: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62901:
62902: END IF;
62903:
62896: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62897: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62898: -- 5132302
62899: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
62900: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62901:
62902: END IF;
62903:
62904: -- 4955764
62901:
62902: END IF;
62903:
62904: -- 4955764
62905: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
62906: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
62907:
62908:
62909: XLA_AE_LINES_PKG.ValidateCurrentLine;
62905: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
62906: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
62907:
62908:
62909: XLA_AE_LINES_PKG.ValidateCurrentLine;
62910: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
62911:
62912: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
62913: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
62906: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
62907:
62908:
62909: XLA_AE_LINES_PKG.ValidateCurrentLine;
62910: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
62911:
62912: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
62913: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
62914: ,p_balance_type_code => l_balance_type_code);
63360: l_first_event_id NUMBER;
63361: l_last_event_id NUMBER;
63362:
63363: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
63364: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
63365: --
63366: --
63367: l_result BOOLEAN := TRUE;
63368: l_rows NUMBER := 1000;
63629: EXIT WHEN l_array_entity_id.COUNT = 0;
63630:
63631: -- initialize arrays
63632: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
63633: XLA_AE_LINES_PKG.g_rec_lines := NULL;
63634:
63635: --
63636: -- Bug 4458708
63637: --
63634:
63635: --
63636: -- Bug 4458708
63637: --
63638: XLA_AE_LINES_PKG.g_LineNumber := 0;
63639:
63640:
63641: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
63642: g_last_hdr_idx := l_array_event_id.LAST;
63777: --
63778: -- following sets the accounting attributes needed to reverse
63779: -- accounting for a distributeion
63780: --
63781: xla_ae_lines_pkg.SetTrxReversalAttrs
63782: (p_event_id => l_event_id
63783: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
63784: ,p_trx_reversal_source => l_trx_reversal_source);
63785:
63809: --
63810: -- insert dummy rows into lines gt table that were created due to
63811: -- transaction reversals
63812: --
63813: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
63814: l_result := XLA_AE_LINES_PKG.InsertLines;
63815: END IF;
63816:
63817: --
63810: -- insert dummy rows into lines gt table that were created due to
63811: -- transaction reversals
63812: --
63813: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
63814: l_result := XLA_AE_LINES_PKG.InsertLines;
63815: END IF;
63816:
63817: --
63818: -- reset the temp_line_num for each set of events fetched from header
63818: -- reset the temp_line_num for each set of events fetched from header
63819: -- cursor rather than doing it for each new event in line cursor
63820: -- Bug 3939231
63821: --
63822: xla_ae_lines_pkg.g_temp_line_num := 0;
63823:
63824:
63825:
63826: --
63886: END IF;
63887: --
63888: EXIT WHEN l_array_entity_id.count = 0;
63889:
63890: XLA_AE_LINES_PKG.g_rec_lines := null;
63891:
63892: --
63893: -- Bug 4458708
63894: --
63891:
63892: --
63893: -- Bug 4458708
63894: --
63895: XLA_AE_LINES_PKG.g_LineNumber := 0;
63896: --
63897: --
63898:
63899: FOR Idx IN 1..l_array_event_id.count LOOP
63963:
63964:
63965:
63966: --
63967: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
63968:
63969: l_acct_reversal_source := SUBSTR(NULL, 1,30);
63970:
63971: IF l_continue_with_lines THEN
63999: --
64000:
64001: -- No reversal code generated
64002:
64003: xla_ae_lines_pkg.SetAcctReversalAttrs
64004: (p_event_id => l_event_id
64005: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
64006: ,p_calculate_acctd_flag => l_calculate_acctd_flag
64007: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
64267:
64268: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
64269: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
64270: AND (l_actual_flag = 'A')) THEN
64271: XLA_AE_LINES_PKG.CreateGainOrLossLines(
64272: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
64273: ,p_application_id => p_application_id
64274: ,p_amb_context_code => 'DEFAULT'
64275: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
64300: END IF;
64301: END IF;
64302:
64303: END LOOP;
64304: l_result := XLA_AE_LINES_PKG.InsertLines ;
64305: end loop;
64306: close line_cur;
64307:
64308:
64799: l_first_event_id NUMBER;
64800: l_last_event_id NUMBER;
64801:
64802: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
64803: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
64804: --
64805: --
64806: l_result BOOLEAN := TRUE;
64807: l_rows NUMBER := 1000;
65058: EXIT WHEN l_array_entity_id.COUNT = 0;
65059:
65060: -- initialize arrays
65061: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
65062: XLA_AE_LINES_PKG.g_rec_lines := NULL;
65063:
65064: --
65065: -- Bug 4458708
65066: --
65063:
65064: --
65065: -- Bug 4458708
65066: --
65067: XLA_AE_LINES_PKG.g_LineNumber := 0;
65068:
65069:
65070: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
65071: g_last_hdr_idx := l_array_event_id.LAST;
65198: --
65199: -- following sets the accounting attributes needed to reverse
65200: -- accounting for a distributeion
65201: --
65202: xla_ae_lines_pkg.SetTrxReversalAttrs
65203: (p_event_id => l_event_id
65204: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
65205: ,p_trx_reversal_source => l_trx_reversal_source);
65206:
65230: --
65231: -- insert dummy rows into lines gt table that were created due to
65232: -- transaction reversals
65233: --
65234: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
65235: l_result := XLA_AE_LINES_PKG.InsertLines;
65236: END IF;
65237:
65238: --
65231: -- insert dummy rows into lines gt table that were created due to
65232: -- transaction reversals
65233: --
65234: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
65235: l_result := XLA_AE_LINES_PKG.InsertLines;
65236: END IF;
65237:
65238: --
65239: -- reset the temp_line_num for each set of events fetched from header
65239: -- reset the temp_line_num for each set of events fetched from header
65240: -- cursor rather than doing it for each new event in line cursor
65241: -- Bug 3939231
65242: --
65243: xla_ae_lines_pkg.g_temp_line_num := 0;
65244:
65245:
65246:
65247: --
65307: END IF;
65308: --
65309: EXIT WHEN l_array_entity_id.count = 0;
65310:
65311: XLA_AE_LINES_PKG.g_rec_lines := null;
65312:
65313: --
65314: -- Bug 4458708
65315: --
65312:
65313: --
65314: -- Bug 4458708
65315: --
65316: XLA_AE_LINES_PKG.g_LineNumber := 0;
65317: --
65318: --
65319:
65320: FOR Idx IN 1..l_array_event_id.count LOOP
65384:
65385:
65386:
65387: --
65388: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
65389:
65390: l_acct_reversal_source := SUBSTR(NULL, 1,30);
65391:
65392: IF l_continue_with_lines THEN
65420: --
65421:
65422: -- No reversal code generated
65423:
65424: xla_ae_lines_pkg.SetAcctReversalAttrs
65425: (p_event_id => l_event_id
65426: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
65427: ,p_calculate_acctd_flag => l_calculate_acctd_flag
65428: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
65624:
65625: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
65626: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
65627: AND (l_actual_flag = 'A')) THEN
65628: XLA_AE_LINES_PKG.CreateGainOrLossLines(
65629: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
65630: ,p_application_id => p_application_id
65631: ,p_amb_context_code => 'DEFAULT'
65632: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
65657: END IF;
65658: END IF;
65659:
65660: END LOOP;
65661: l_result := XLA_AE_LINES_PKG.InsertLines ;
65662: end loop;
65663: close line_cur;
65664:
65665:
66159: l_first_event_id NUMBER;
66160: l_last_event_id NUMBER;
66161:
66162: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
66163: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
66164: --
66165: --
66166: l_result BOOLEAN := TRUE;
66167: l_rows NUMBER := 1000;
66421: EXIT WHEN l_array_entity_id.COUNT = 0;
66422:
66423: -- initialize arrays
66424: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
66425: XLA_AE_LINES_PKG.g_rec_lines := NULL;
66426:
66427: --
66428: -- Bug 4458708
66429: --
66426:
66427: --
66428: -- Bug 4458708
66429: --
66430: XLA_AE_LINES_PKG.g_LineNumber := 0;
66431:
66432:
66433: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
66434: g_last_hdr_idx := l_array_event_id.LAST;
66569: --
66570: -- following sets the accounting attributes needed to reverse
66571: -- accounting for a distributeion
66572: --
66573: xla_ae_lines_pkg.SetTrxReversalAttrs
66574: (p_event_id => l_event_id
66575: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
66576: ,p_trx_reversal_source => l_trx_reversal_source);
66577:
66601: --
66602: -- insert dummy rows into lines gt table that were created due to
66603: -- transaction reversals
66604: --
66605: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
66606: l_result := XLA_AE_LINES_PKG.InsertLines;
66607: END IF;
66608:
66609: --
66602: -- insert dummy rows into lines gt table that were created due to
66603: -- transaction reversals
66604: --
66605: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
66606: l_result := XLA_AE_LINES_PKG.InsertLines;
66607: END IF;
66608:
66609: --
66610: -- reset the temp_line_num for each set of events fetched from header
66610: -- reset the temp_line_num for each set of events fetched from header
66611: -- cursor rather than doing it for each new event in line cursor
66612: -- Bug 3939231
66613: --
66614: xla_ae_lines_pkg.g_temp_line_num := 0;
66615:
66616:
66617:
66618: --
66677: END IF;
66678: --
66679: EXIT WHEN l_array_entity_id.count = 0;
66680:
66681: XLA_AE_LINES_PKG.g_rec_lines := null;
66682:
66683: --
66684: -- Bug 4458708
66685: --
66682:
66683: --
66684: -- Bug 4458708
66685: --
66686: XLA_AE_LINES_PKG.g_LineNumber := 0;
66687: --
66688: --
66689:
66690: FOR Idx IN 1..l_array_event_id.count LOOP
66754:
66755:
66756:
66757: --
66758: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
66759:
66760: l_acct_reversal_source := SUBSTR(NULL, 1,30);
66761:
66762: IF l_continue_with_lines THEN
66790: --
66791:
66792: -- No reversal code generated
66793:
66794: xla_ae_lines_pkg.SetAcctReversalAttrs
66795: (p_event_id => l_event_id
66796: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
66797: ,p_calculate_acctd_flag => l_calculate_acctd_flag
66798: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
66870:
66871: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
66872: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
66873: AND (l_actual_flag = 'A')) THEN
66874: XLA_AE_LINES_PKG.CreateGainOrLossLines(
66875: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
66876: ,p_application_id => p_application_id
66877: ,p_amb_context_code => 'DEFAULT'
66878: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
66903: END IF;
66904: END IF;
66905:
66906: END LOOP;
66907: l_result := XLA_AE_LINES_PKG.InsertLines ;
66908: end loop;
66909: close line_cur;
66910:
66911:
67525: l_first_event_id NUMBER;
67526: l_last_event_id NUMBER;
67527:
67528: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
67529: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
67530: --
67531: --
67532: l_result BOOLEAN := TRUE;
67533: l_rows NUMBER := 1000;
67877: EXIT WHEN l_array_entity_id.COUNT = 0;
67878:
67879: -- initialize arrays
67880: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
67881: XLA_AE_LINES_PKG.g_rec_lines := NULL;
67882:
67883: --
67884: -- Bug 4458708
67885: --
67882:
67883: --
67884: -- Bug 4458708
67885: --
67886: XLA_AE_LINES_PKG.g_LineNumber := 0;
67887:
67888:
67889: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
67890: g_last_hdr_idx := l_array_event_id.LAST;
68021: --
68022: -- following sets the accounting attributes needed to reverse
68023: -- accounting for a distributeion
68024: --
68025: xla_ae_lines_pkg.SetTrxReversalAttrs
68026: (p_event_id => l_event_id
68027: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
68028: ,p_trx_reversal_source => l_trx_reversal_source);
68029:
68053: --
68054: -- insert dummy rows into lines gt table that were created due to
68055: -- transaction reversals
68056: --
68057: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
68058: l_result := XLA_AE_LINES_PKG.InsertLines;
68059: END IF;
68060:
68061: --
68054: -- insert dummy rows into lines gt table that were created due to
68055: -- transaction reversals
68056: --
68057: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
68058: l_result := XLA_AE_LINES_PKG.InsertLines;
68059: END IF;
68060:
68061: --
68062: -- reset the temp_line_num for each set of events fetched from header
68062: -- reset the temp_line_num for each set of events fetched from header
68063: -- cursor rather than doing it for each new event in line cursor
68064: -- Bug 3939231
68065: --
68066: xla_ae_lines_pkg.g_temp_line_num := 0;
68067:
68068:
68069:
68070: --
68146: END IF;
68147: --
68148: EXIT WHEN l_array_entity_id.count = 0;
68149:
68150: XLA_AE_LINES_PKG.g_rec_lines := null;
68151:
68152: --
68153: -- Bug 4458708
68154: --
68151:
68152: --
68153: -- Bug 4458708
68154: --
68155: XLA_AE_LINES_PKG.g_LineNumber := 0;
68156: --
68157: --
68158:
68159: FOR Idx IN 1..l_array_event_id.count LOOP
68223:
68224:
68225:
68226: --
68227: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
68228:
68229: l_acct_reversal_source := SUBSTR(l_array_source_67(Idx), 1,30);
68230:
68231: IF l_continue_with_lines THEN
68271: l_rec_rev_acct_attrs.array_acct_attr_code(7) := 'REVERSED_DISTRIBUTION_TYPE';
68272: l_rec_rev_acct_attrs.array_char_value(7) := l_array_source_84(Idx);
68273:
68274:
68275: xla_ae_lines_pkg.SetAcctReversalAttrs
68276: (p_event_id => l_event_id
68277: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
68278: ,p_calculate_acctd_flag => l_calculate_acctd_flag
68279: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
68555:
68556: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
68557: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
68558: AND (l_actual_flag = 'A')) THEN
68559: XLA_AE_LINES_PKG.CreateGainOrLossLines(
68560: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
68561: ,p_application_id => p_application_id
68562: ,p_amb_context_code => 'DEFAULT'
68563: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
68588: END IF;
68589: END IF;
68590:
68591: END LOOP;
68592: l_result := XLA_AE_LINES_PKG.InsertLines ;
68593: end loop;
68594: close line_cur;
68595:
68596:
69149: l_first_event_id NUMBER;
69150: l_last_event_id NUMBER;
69151:
69152: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
69153: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
69154: --
69155: --
69156: l_result BOOLEAN := TRUE;
69157: l_rows NUMBER := 1000;
69451: EXIT WHEN l_array_entity_id.COUNT = 0;
69452:
69453: -- initialize arrays
69454: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
69455: XLA_AE_LINES_PKG.g_rec_lines := NULL;
69456:
69457: --
69458: -- Bug 4458708
69459: --
69456:
69457: --
69458: -- Bug 4458708
69459: --
69460: XLA_AE_LINES_PKG.g_LineNumber := 0;
69461:
69462:
69463: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
69464: g_last_hdr_idx := l_array_event_id.LAST;
69592: --
69593: -- following sets the accounting attributes needed to reverse
69594: -- accounting for a distributeion
69595: --
69596: xla_ae_lines_pkg.SetTrxReversalAttrs
69597: (p_event_id => l_event_id
69598: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
69599: ,p_trx_reversal_source => l_trx_reversal_source);
69600:
69624: --
69625: -- insert dummy rows into lines gt table that were created due to
69626: -- transaction reversals
69627: --
69628: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
69629: l_result := XLA_AE_LINES_PKG.InsertLines;
69630: END IF;
69631:
69632: --
69625: -- insert dummy rows into lines gt table that were created due to
69626: -- transaction reversals
69627: --
69628: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
69629: l_result := XLA_AE_LINES_PKG.InsertLines;
69630: END IF;
69631:
69632: --
69633: -- reset the temp_line_num for each set of events fetched from header
69633: -- reset the temp_line_num for each set of events fetched from header
69634: -- cursor rather than doing it for each new event in line cursor
69635: -- Bug 3939231
69636: --
69637: xla_ae_lines_pkg.g_temp_line_num := 0;
69638:
69639:
69640:
69641: --
69710: END IF;
69711: --
69712: EXIT WHEN l_array_entity_id.count = 0;
69713:
69714: XLA_AE_LINES_PKG.g_rec_lines := null;
69715:
69716: --
69717: -- Bug 4458708
69718: --
69715:
69716: --
69717: -- Bug 4458708
69718: --
69719: XLA_AE_LINES_PKG.g_LineNumber := 0;
69720: --
69721: --
69722:
69723: FOR Idx IN 1..l_array_event_id.count LOOP
69787:
69788:
69789:
69790: --
69791: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
69792:
69793: l_acct_reversal_source := SUBSTR(NULL, 1,30);
69794:
69795: IF l_continue_with_lines THEN
69823: --
69824:
69825: -- No reversal code generated
69826:
69827: xla_ae_lines_pkg.SetAcctReversalAttrs
69828: (p_event_id => l_event_id
69829: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
69830: ,p_calculate_acctd_flag => l_calculate_acctd_flag
69831: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
70271:
70272: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
70273: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
70274: AND (l_actual_flag = 'A')) THEN
70275: XLA_AE_LINES_PKG.CreateGainOrLossLines(
70276: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
70277: ,p_application_id => p_application_id
70278: ,p_amb_context_code => 'DEFAULT'
70279: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
70304: END IF;
70305: END IF;
70306:
70307: END LOOP;
70308: l_result := XLA_AE_LINES_PKG.InsertLines ;
70309: end loop;
70310: close line_cur;
70311:
70312:
70816: l_first_event_id NUMBER;
70817: l_last_event_id NUMBER;
70818:
70819: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
70820: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
70821: --
70822: --
70823: l_result BOOLEAN := TRUE;
70824: l_rows NUMBER := 1000;
71084: EXIT WHEN l_array_entity_id.COUNT = 0;
71085:
71086: -- initialize arrays
71087: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
71088: XLA_AE_LINES_PKG.g_rec_lines := NULL;
71089:
71090: --
71091: -- Bug 4458708
71092: --
71089:
71090: --
71091: -- Bug 4458708
71092: --
71093: XLA_AE_LINES_PKG.g_LineNumber := 0;
71094:
71095:
71096: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
71097: g_last_hdr_idx := l_array_event_id.LAST;
71232: --
71233: -- following sets the accounting attributes needed to reverse
71234: -- accounting for a distributeion
71235: --
71236: xla_ae_lines_pkg.SetTrxReversalAttrs
71237: (p_event_id => l_event_id
71238: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
71239: ,p_trx_reversal_source => l_trx_reversal_source);
71240:
71264: --
71265: -- insert dummy rows into lines gt table that were created due to
71266: -- transaction reversals
71267: --
71268: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
71269: l_result := XLA_AE_LINES_PKG.InsertLines;
71270: END IF;
71271:
71272: --
71265: -- insert dummy rows into lines gt table that were created due to
71266: -- transaction reversals
71267: --
71268: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
71269: l_result := XLA_AE_LINES_PKG.InsertLines;
71270: END IF;
71271:
71272: --
71273: -- reset the temp_line_num for each set of events fetched from header
71273: -- reset the temp_line_num for each set of events fetched from header
71274: -- cursor rather than doing it for each new event in line cursor
71275: -- Bug 3939231
71276: --
71277: xla_ae_lines_pkg.g_temp_line_num := 0;
71278:
71279:
71280:
71281: --
71342: END IF;
71343: --
71344: EXIT WHEN l_array_entity_id.count = 0;
71345:
71346: XLA_AE_LINES_PKG.g_rec_lines := null;
71347:
71348: --
71349: -- Bug 4458708
71350: --
71347:
71348: --
71349: -- Bug 4458708
71350: --
71351: XLA_AE_LINES_PKG.g_LineNumber := 0;
71352: --
71353: --
71354:
71355: FOR Idx IN 1..l_array_event_id.count LOOP
71419:
71420:
71421:
71422: --
71423: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
71424:
71425: l_acct_reversal_source := SUBSTR(NULL, 1,30);
71426:
71427: IF l_continue_with_lines THEN
71455: --
71456:
71457: -- No reversal code generated
71458:
71459: xla_ae_lines_pkg.SetAcctReversalAttrs
71460: (p_event_id => l_event_id
71461: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
71462: ,p_calculate_acctd_flag => l_calculate_acctd_flag
71463: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
71731:
71732: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
71733: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
71734: AND (l_actual_flag = 'A')) THEN
71735: XLA_AE_LINES_PKG.CreateGainOrLossLines(
71736: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
71737: ,p_application_id => p_application_id
71738: ,p_amb_context_code => 'DEFAULT'
71739: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
71764: END IF;
71765: END IF;
71766:
71767: END LOOP;
71768: l_result := XLA_AE_LINES_PKG.InsertLines ;
71769: end loop;
71770: close line_cur;
71771:
71772:
72266: l_first_event_id NUMBER;
72267: l_last_event_id NUMBER;
72268:
72269: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
72270: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
72271: --
72272: --
72273: l_result BOOLEAN := TRUE;
72274: l_rows NUMBER := 1000;
72528: EXIT WHEN l_array_entity_id.COUNT = 0;
72529:
72530: -- initialize arrays
72531: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
72532: XLA_AE_LINES_PKG.g_rec_lines := NULL;
72533:
72534: --
72535: -- Bug 4458708
72536: --
72533:
72534: --
72535: -- Bug 4458708
72536: --
72537: XLA_AE_LINES_PKG.g_LineNumber := 0;
72538:
72539:
72540: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
72541: g_last_hdr_idx := l_array_event_id.LAST;
72676: --
72677: -- following sets the accounting attributes needed to reverse
72678: -- accounting for a distributeion
72679: --
72680: xla_ae_lines_pkg.SetTrxReversalAttrs
72681: (p_event_id => l_event_id
72682: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
72683: ,p_trx_reversal_source => l_trx_reversal_source);
72684:
72708: --
72709: -- insert dummy rows into lines gt table that were created due to
72710: -- transaction reversals
72711: --
72712: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
72713: l_result := XLA_AE_LINES_PKG.InsertLines;
72714: END IF;
72715:
72716: --
72709: -- insert dummy rows into lines gt table that were created due to
72710: -- transaction reversals
72711: --
72712: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
72713: l_result := XLA_AE_LINES_PKG.InsertLines;
72714: END IF;
72715:
72716: --
72717: -- reset the temp_line_num for each set of events fetched from header
72717: -- reset the temp_line_num for each set of events fetched from header
72718: -- cursor rather than doing it for each new event in line cursor
72719: -- Bug 3939231
72720: --
72721: xla_ae_lines_pkg.g_temp_line_num := 0;
72722:
72723:
72724:
72725: --
72784: END IF;
72785: --
72786: EXIT WHEN l_array_entity_id.count = 0;
72787:
72788: XLA_AE_LINES_PKG.g_rec_lines := null;
72789:
72790: --
72791: -- Bug 4458708
72792: --
72789:
72790: --
72791: -- Bug 4458708
72792: --
72793: XLA_AE_LINES_PKG.g_LineNumber := 0;
72794: --
72795: --
72796:
72797: FOR Idx IN 1..l_array_event_id.count LOOP
72861:
72862:
72863:
72864: --
72865: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
72866:
72867: l_acct_reversal_source := SUBSTR(NULL, 1,30);
72868:
72869: IF l_continue_with_lines THEN
72897: --
72898:
72899: -- No reversal code generated
72900:
72901: xla_ae_lines_pkg.SetAcctReversalAttrs
72902: (p_event_id => l_event_id
72903: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
72904: ,p_calculate_acctd_flag => l_calculate_acctd_flag
72905: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
72977:
72978: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
72979: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
72980: AND (l_actual_flag = 'A')) THEN
72981: XLA_AE_LINES_PKG.CreateGainOrLossLines(
72982: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
72983: ,p_application_id => p_application_id
72984: ,p_amb_context_code => 'DEFAULT'
72985: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
73010: END IF;
73011: END IF;
73012:
73013: END LOOP;
73014: l_result := XLA_AE_LINES_PKG.InsertLines ;
73015: end loop;
73016: close line_cur;
73017:
73018:
73637: l_first_event_id NUMBER;
73638: l_last_event_id NUMBER;
73639:
73640: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
73641: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
73642: --
73643: --
73644: l_result BOOLEAN := TRUE;
73645: l_rows NUMBER := 1000;
73992: EXIT WHEN l_array_entity_id.COUNT = 0;
73993:
73994: -- initialize arrays
73995: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
73996: XLA_AE_LINES_PKG.g_rec_lines := NULL;
73997:
73998: --
73999: -- Bug 4458708
74000: --
73997:
73998: --
73999: -- Bug 4458708
74000: --
74001: XLA_AE_LINES_PKG.g_LineNumber := 0;
74002:
74003:
74004: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
74005: g_last_hdr_idx := l_array_event_id.LAST;
74136: --
74137: -- following sets the accounting attributes needed to reverse
74138: -- accounting for a distributeion
74139: --
74140: xla_ae_lines_pkg.SetTrxReversalAttrs
74141: (p_event_id => l_event_id
74142: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
74143: ,p_trx_reversal_source => l_trx_reversal_source);
74144:
74168: --
74169: -- insert dummy rows into lines gt table that were created due to
74170: -- transaction reversals
74171: --
74172: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
74173: l_result := XLA_AE_LINES_PKG.InsertLines;
74174: END IF;
74175:
74176: --
74169: -- insert dummy rows into lines gt table that were created due to
74170: -- transaction reversals
74171: --
74172: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
74173: l_result := XLA_AE_LINES_PKG.InsertLines;
74174: END IF;
74175:
74176: --
74177: -- reset the temp_line_num for each set of events fetched from header
74177: -- reset the temp_line_num for each set of events fetched from header
74178: -- cursor rather than doing it for each new event in line cursor
74179: -- Bug 3939231
74180: --
74181: xla_ae_lines_pkg.g_temp_line_num := 0;
74182:
74183:
74184:
74185: --
74262: END IF;
74263: --
74264: EXIT WHEN l_array_entity_id.count = 0;
74265:
74266: XLA_AE_LINES_PKG.g_rec_lines := null;
74267:
74268: --
74269: -- Bug 4458708
74270: --
74267:
74268: --
74269: -- Bug 4458708
74270: --
74271: XLA_AE_LINES_PKG.g_LineNumber := 0;
74272: --
74273: --
74274:
74275: FOR Idx IN 1..l_array_event_id.count LOOP
74339:
74340:
74341:
74342: --
74343: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
74344:
74345: l_acct_reversal_source := SUBSTR(l_array_source_67(Idx), 1,30);
74346:
74347: IF l_continue_with_lines THEN
74387: l_rec_rev_acct_attrs.array_acct_attr_code(7) := 'REVERSED_DISTRIBUTION_TYPE';
74388: l_rec_rev_acct_attrs.array_char_value(7) := l_array_source_84(Idx);
74389:
74390:
74391: xla_ae_lines_pkg.SetAcctReversalAttrs
74392: (p_event_id => l_event_id
74393: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
74394: ,p_calculate_acctd_flag => l_calculate_acctd_flag
74395: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
74717:
74718: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
74719: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
74720: AND (l_actual_flag = 'A')) THEN
74721: XLA_AE_LINES_PKG.CreateGainOrLossLines(
74722: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
74723: ,p_application_id => p_application_id
74724: ,p_amb_context_code => 'DEFAULT'
74725: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
74750: END IF;
74751: END IF;
74752:
74753: END LOOP;
74754: l_result := XLA_AE_LINES_PKG.InsertLines ;
74755: end loop;
74756: close line_cur;
74757:
74758:
75252: l_first_event_id NUMBER;
75253: l_last_event_id NUMBER;
75254:
75255: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
75256: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
75257: --
75258: --
75259: l_result BOOLEAN := TRUE;
75260: l_rows NUMBER := 1000;
75514: EXIT WHEN l_array_entity_id.COUNT = 0;
75515:
75516: -- initialize arrays
75517: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
75518: XLA_AE_LINES_PKG.g_rec_lines := NULL;
75519:
75520: --
75521: -- Bug 4458708
75522: --
75519:
75520: --
75521: -- Bug 4458708
75522: --
75523: XLA_AE_LINES_PKG.g_LineNumber := 0;
75524:
75525:
75526: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
75527: g_last_hdr_idx := l_array_event_id.LAST;
75662: --
75663: -- following sets the accounting attributes needed to reverse
75664: -- accounting for a distributeion
75665: --
75666: xla_ae_lines_pkg.SetTrxReversalAttrs
75667: (p_event_id => l_event_id
75668: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
75669: ,p_trx_reversal_source => l_trx_reversal_source);
75670:
75694: --
75695: -- insert dummy rows into lines gt table that were created due to
75696: -- transaction reversals
75697: --
75698: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
75699: l_result := XLA_AE_LINES_PKG.InsertLines;
75700: END IF;
75701:
75702: --
75695: -- insert dummy rows into lines gt table that were created due to
75696: -- transaction reversals
75697: --
75698: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
75699: l_result := XLA_AE_LINES_PKG.InsertLines;
75700: END IF;
75701:
75702: --
75703: -- reset the temp_line_num for each set of events fetched from header
75703: -- reset the temp_line_num for each set of events fetched from header
75704: -- cursor rather than doing it for each new event in line cursor
75705: -- Bug 3939231
75706: --
75707: xla_ae_lines_pkg.g_temp_line_num := 0;
75708:
75709:
75710:
75711: --
75770: END IF;
75771: --
75772: EXIT WHEN l_array_entity_id.count = 0;
75773:
75774: XLA_AE_LINES_PKG.g_rec_lines := null;
75775:
75776: --
75777: -- Bug 4458708
75778: --
75775:
75776: --
75777: -- Bug 4458708
75778: --
75779: XLA_AE_LINES_PKG.g_LineNumber := 0;
75780: --
75781: --
75782:
75783: FOR Idx IN 1..l_array_event_id.count LOOP
75847:
75848:
75849:
75850: --
75851: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
75852:
75853: l_acct_reversal_source := SUBSTR(NULL, 1,30);
75854:
75855: IF l_continue_with_lines THEN
75883: --
75884:
75885: -- No reversal code generated
75886:
75887: xla_ae_lines_pkg.SetAcctReversalAttrs
75888: (p_event_id => l_event_id
75889: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
75890: ,p_calculate_acctd_flag => l_calculate_acctd_flag
75891: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
75963:
75964: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
75965: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
75966: AND (l_actual_flag = 'A')) THEN
75967: XLA_AE_LINES_PKG.CreateGainOrLossLines(
75968: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
75969: ,p_application_id => p_application_id
75970: ,p_amb_context_code => 'DEFAULT'
75971: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
75996: END IF;
75997: END IF;
75998:
75999: END LOOP;
76000: l_result := XLA_AE_LINES_PKG.InsertLines ;
76001: end loop;
76002: close line_cur;
76003:
76004:
76513: l_first_event_id NUMBER;
76514: l_last_event_id NUMBER;
76515:
76516: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
76517: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
76518: --
76519: --
76520: l_result BOOLEAN := TRUE;
76521: l_rows NUMBER := 1000;
76784: EXIT WHEN l_array_entity_id.COUNT = 0;
76785:
76786: -- initialize arrays
76787: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
76788: XLA_AE_LINES_PKG.g_rec_lines := NULL;
76789:
76790: --
76791: -- Bug 4458708
76792: --
76789:
76790: --
76791: -- Bug 4458708
76792: --
76793: XLA_AE_LINES_PKG.g_LineNumber := 0;
76794:
76795:
76796: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
76797: g_last_hdr_idx := l_array_event_id.LAST;
76932: --
76933: -- following sets the accounting attributes needed to reverse
76934: -- accounting for a distributeion
76935: --
76936: xla_ae_lines_pkg.SetTrxReversalAttrs
76937: (p_event_id => l_event_id
76938: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
76939: ,p_trx_reversal_source => l_trx_reversal_source);
76940:
76964: --
76965: -- insert dummy rows into lines gt table that were created due to
76966: -- transaction reversals
76967: --
76968: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
76969: l_result := XLA_AE_LINES_PKG.InsertLines;
76970: END IF;
76971:
76972: --
76965: -- insert dummy rows into lines gt table that were created due to
76966: -- transaction reversals
76967: --
76968: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
76969: l_result := XLA_AE_LINES_PKG.InsertLines;
76970: END IF;
76971:
76972: --
76973: -- reset the temp_line_num for each set of events fetched from header
76973: -- reset the temp_line_num for each set of events fetched from header
76974: -- cursor rather than doing it for each new event in line cursor
76975: -- Bug 3939231
76976: --
76977: xla_ae_lines_pkg.g_temp_line_num := 0;
76978:
76979:
76980:
76981: --
77043: END IF;
77044: --
77045: EXIT WHEN l_array_entity_id.count = 0;
77046:
77047: XLA_AE_LINES_PKG.g_rec_lines := null;
77048:
77049: --
77050: -- Bug 4458708
77051: --
77048:
77049: --
77050: -- Bug 4458708
77051: --
77052: XLA_AE_LINES_PKG.g_LineNumber := 0;
77053: --
77054: --
77055:
77056: FOR Idx IN 1..l_array_event_id.count LOOP
77120:
77121:
77122:
77123: --
77124: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
77125:
77126: l_acct_reversal_source := SUBSTR(NULL, 1,30);
77127:
77128: IF l_continue_with_lines THEN
77156: --
77157:
77158: -- No reversal code generated
77159:
77160: xla_ae_lines_pkg.SetAcctReversalAttrs
77161: (p_event_id => l_event_id
77162: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
77163: ,p_calculate_acctd_flag => l_calculate_acctd_flag
77164: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
77533:
77534: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
77535: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
77536: AND (l_actual_flag = 'A')) THEN
77537: XLA_AE_LINES_PKG.CreateGainOrLossLines(
77538: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
77539: ,p_application_id => p_application_id
77540: ,p_amb_context_code => 'DEFAULT'
77541: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
77566: END IF;
77567: END IF;
77568:
77569: END LOOP;
77570: l_result := XLA_AE_LINES_PKG.InsertLines ;
77571: end loop;
77572: close line_cur;
77573:
77574:
78100: l_first_event_id NUMBER;
78101: l_last_event_id NUMBER;
78102:
78103: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
78104: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
78105: --
78106: --
78107: l_result BOOLEAN := TRUE;
78108: l_rows NUMBER := 1000;
78386: EXIT WHEN l_array_entity_id.COUNT = 0;
78387:
78388: -- initialize arrays
78389: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
78390: XLA_AE_LINES_PKG.g_rec_lines := NULL;
78391:
78392: --
78393: -- Bug 4458708
78394: --
78391:
78392: --
78393: -- Bug 4458708
78394: --
78395: XLA_AE_LINES_PKG.g_LineNumber := 0;
78396:
78397:
78398: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
78399: g_last_hdr_idx := l_array_event_id.LAST;
78554: --
78555: -- following sets the accounting attributes needed to reverse
78556: -- accounting for a distributeion
78557: --
78558: xla_ae_lines_pkg.SetTrxReversalAttrs
78559: (p_event_id => l_event_id
78560: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
78561: ,p_trx_reversal_source => l_trx_reversal_source);
78562:
78586: --
78587: -- insert dummy rows into lines gt table that were created due to
78588: -- transaction reversals
78589: --
78590: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
78591: l_result := XLA_AE_LINES_PKG.InsertLines;
78592: END IF;
78593:
78594: --
78587: -- insert dummy rows into lines gt table that were created due to
78588: -- transaction reversals
78589: --
78590: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
78591: l_result := XLA_AE_LINES_PKG.InsertLines;
78592: END IF;
78593:
78594: --
78595: -- reset the temp_line_num for each set of events fetched from header
78595: -- reset the temp_line_num for each set of events fetched from header
78596: -- cursor rather than doing it for each new event in line cursor
78597: -- Bug 3939231
78598: --
78599: xla_ae_lines_pkg.g_temp_line_num := 0;
78600:
78601:
78602:
78603: --
78664: END IF;
78665: --
78666: EXIT WHEN l_array_entity_id.count = 0;
78667:
78668: XLA_AE_LINES_PKG.g_rec_lines := null;
78669:
78670: --
78671: -- Bug 4458708
78672: --
78669:
78670: --
78671: -- Bug 4458708
78672: --
78673: XLA_AE_LINES_PKG.g_LineNumber := 0;
78674: --
78675: --
78676:
78677: FOR Idx IN 1..l_array_event_id.count LOOP
78741:
78742:
78743:
78744: --
78745: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
78746:
78747: l_acct_reversal_source := SUBSTR(NULL, 1,30);
78748:
78749: IF l_continue_with_lines THEN
78777: --
78778:
78779: -- No reversal code generated
78780:
78781: xla_ae_lines_pkg.SetAcctReversalAttrs
78782: (p_event_id => l_event_id
78783: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
78784: ,p_calculate_acctd_flag => l_calculate_acctd_flag
78785: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
79036:
79037: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
79038: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
79039: AND (l_actual_flag = 'A')) THEN
79040: XLA_AE_LINES_PKG.CreateGainOrLossLines(
79041: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
79042: ,p_application_id => p_application_id
79043: ,p_amb_context_code => 'DEFAULT'
79044: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
79069: END IF;
79070: END IF;
79071:
79072: END LOOP;
79073: l_result := XLA_AE_LINES_PKG.InsertLines ;
79074: end loop;
79075: close line_cur;
79076:
79077:
79739: l_first_event_id NUMBER;
79740: l_last_event_id NUMBER;
79741:
79742: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
79743: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
79744: --
79745: --
79746: l_result BOOLEAN := TRUE;
79747: l_rows NUMBER := 1000;
80117: EXIT WHEN l_array_entity_id.COUNT = 0;
80118:
80119: -- initialize arrays
80120: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
80121: XLA_AE_LINES_PKG.g_rec_lines := NULL;
80122:
80123: --
80124: -- Bug 4458708
80125: --
80122:
80123: --
80124: -- Bug 4458708
80125: --
80126: XLA_AE_LINES_PKG.g_LineNumber := 0;
80127:
80128:
80129: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
80130: g_last_hdr_idx := l_array_event_id.LAST;
80291: --
80292: -- following sets the accounting attributes needed to reverse
80293: -- accounting for a distributeion
80294: --
80295: xla_ae_lines_pkg.SetTrxReversalAttrs
80296: (p_event_id => l_event_id
80297: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
80298: ,p_trx_reversal_source => l_trx_reversal_source);
80299:
80323: --
80324: -- insert dummy rows into lines gt table that were created due to
80325: -- transaction reversals
80326: --
80327: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
80328: l_result := XLA_AE_LINES_PKG.InsertLines;
80329: END IF;
80330:
80331: --
80324: -- insert dummy rows into lines gt table that were created due to
80325: -- transaction reversals
80326: --
80327: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
80328: l_result := XLA_AE_LINES_PKG.InsertLines;
80329: END IF;
80330:
80331: --
80332: -- reset the temp_line_num for each set of events fetched from header
80332: -- reset the temp_line_num for each set of events fetched from header
80333: -- cursor rather than doing it for each new event in line cursor
80334: -- Bug 3939231
80335: --
80336: xla_ae_lines_pkg.g_temp_line_num := 0;
80337:
80338:
80339:
80340: --
80420: END IF;
80421: --
80422: EXIT WHEN l_array_entity_id.count = 0;
80423:
80424: XLA_AE_LINES_PKG.g_rec_lines := null;
80425:
80426: --
80427: -- Bug 4458708
80428: --
80425:
80426: --
80427: -- Bug 4458708
80428: --
80429: XLA_AE_LINES_PKG.g_LineNumber := 0;
80430: --
80431: --
80432:
80433: FOR Idx IN 1..l_array_event_id.count LOOP
80497:
80498:
80499:
80500: --
80501: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
80502:
80503: l_acct_reversal_source := SUBSTR(NULL, 1,30);
80504:
80505: IF l_continue_with_lines THEN
80533: --
80534:
80535: -- No reversal code generated
80536:
80537: xla_ae_lines_pkg.SetAcctReversalAttrs
80538: (p_event_id => l_event_id
80539: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
80540: ,p_calculate_acctd_flag => l_calculate_acctd_flag
80541: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
81625:
81626: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
81627: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
81628: AND (l_actual_flag = 'A')) THEN
81629: XLA_AE_LINES_PKG.CreateGainOrLossLines(
81630: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
81631: ,p_application_id => p_application_id
81632: ,p_amb_context_code => 'DEFAULT'
81633: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
81658: END IF;
81659: END IF;
81660:
81661: END LOOP;
81662: l_result := XLA_AE_LINES_PKG.InsertLines ;
81663: end loop;
81664: close line_cur;
81665:
81666:
81793:
81794: --
81795: -- initialize array of lines with NULL
81796: --
81797: xla_ae_lines_pkg.SetNullLine;
81798:
81799: --
81800: -- initialize header extract count -- Bug 4865292
81801: --