The following lines contain the word 'select', 'insert', 'update' or 'delete':
FA_TRANSACTION_HEADERS_PKG.Update_Trx_Type
(X_Book_Type_Code => px_asset_hdr_rec.book_type_code,
X_Asset_Id => px_asset_hdr_rec.asset_id,
X_Transaction_Type_Code => l_old_transaction_type_code,
X_New_Transaction_Type => l_old_transaction_type_code || '/VOID',
X_Return_Status => l_status,
X_Calling_Fn => l_calling_fn
,p_log_level_rec => p_log_level_rec);
select event_type_code
into l_event_type_code
from xla_events
where application_id = 140
and event_id = px_trans_rec.event_id;
if not fa_xla_events_pvt.update_inter_transaction_event
(p_ledger_id => px_asset_hdr_rec.set_of_books_id,
p_trx_reference_id => px_trans_rec.trx_reference_id,
p_book_type_code => px_asset_hdr_rec.book_type_code,
p_event_type_code => l_event_type_code,
p_event_date => px_trans_rec.transaction_date_entered,
p_event_status_code => XLA_EVENTS_PUB_PKG.C_EVENT_INCOMPLETE,
p_calling_fn => l_calling_fn,
p_log_level_rec => p_log_level_rec) then
raise adj_err;
if not fa_xla_events_pvt.update_transaction_event
(p_ledger_id => px_asset_hdr_rec.set_of_books_id,
p_transaction_header_id => px_trans_rec.member_transaction_header_id,
p_book_type_code => px_asset_hdr_rec.book_type_code,
p_event_type_code => l_event_type_code,
p_event_date => px_trans_rec.transaction_date_entered,
p_event_status_code => XLA_EVENTS_PUB_PKG.C_EVENT_INCOMPLETE,
p_calling_fn => l_calling_fn,
p_log_level_rec => p_log_level_rec) then
raise adj_err;
fa_debug_pkg.add('pvt adj api', 'trx_date before insert',
px_trans_rec.transaction_date_entered,
p_log_level_rec => p_log_level_rec);
FA_TRANSACTION_HEADERS_PKG.Insert_Row
(X_Rowid => l_th_rowid,
X_Transaction_Header_Id => px_trans_rec.transaction_header_id,
X_Book_Type_Code => px_asset_hdr_rec.book_type_code,
X_Asset_Id => px_asset_hdr_rec.asset_id,
X_Transaction_Type_Code => px_trans_rec.transaction_type_code,
X_Transaction_Date_Entered => px_trans_rec.transaction_date_entered,
X_Date_Effective => px_trans_rec.who_info.creation_date,
X_Last_Update_Date => px_trans_rec.who_info.last_update_date,
X_Last_Updated_By => px_trans_rec.who_info.last_updated_by,
X_Transaction_Name => px_trans_rec.transaction_name,
X_Invoice_Transaction_Id => p_inv_trans_rec.invoice_transaction_id ,
X_Source_Transaction_Header_Id => px_trans_rec.Source_Transaction_Header_Id,
X_Mass_Reference_Id => px_trans_rec.mass_reference_id,
X_Last_Update_Login => px_trans_rec.who_info.last_update_login,
X_Transaction_Subtype => px_trans_rec.transaction_subtype,
X_Attribute1 => px_trans_rec.desc_flex.attribute1,
X_Attribute2 => px_trans_rec.desc_flex.attribute2,
X_Attribute3 => px_trans_rec.desc_flex.attribute3,
X_Attribute4 => px_trans_rec.desc_flex.attribute4,
X_Attribute5 => px_trans_rec.desc_flex.attribute5,
X_Attribute6 => px_trans_rec.desc_flex.attribute6,
X_Attribute7 => px_trans_rec.desc_flex.attribute7,
X_Attribute8 => px_trans_rec.desc_flex.attribute8,
X_Attribute9 => px_trans_rec.desc_flex.attribute9,
X_Attribute10 => px_trans_rec.desc_flex.attribute10,
X_Attribute11 => px_trans_rec.desc_flex.attribute11,
X_Attribute12 => px_trans_rec.desc_flex.attribute12,
X_Attribute13 => px_trans_rec.desc_flex.attribute13,
X_Attribute14 => px_trans_rec.desc_flex.attribute14,
X_Attribute15 => px_trans_rec.desc_flex.attribute15,
X_Attribute_Category_Code => px_trans_rec.desc_flex.attribute_category_code,
X_Transaction_Key => px_trans_rec.transaction_key,
X_Amortization_Start_Date => px_trans_rec.amortization_start_date,
X_Calling_Interface => px_trans_rec.calling_interface,
X_Mass_Transaction_ID => px_trans_rec.mass_transaction_id,
X_Member_Transaction_Header_Id => px_trans_rec.member_transaction_header_id,
X_Trx_Reference_Id => px_trans_rec.trx_reference_id,
X_Event_Id => px_trans_rec.event_id,
X_Return_Status => l_status,
X_Calling_Fn => l_calling_fn
,p_log_level_rec => p_log_level_rec);
X_date_ineffective => px_trans_rec.who_info.last_update_date,
X_mrc_sob_type_code => p_mrc_sob_type_code,
X_Calling_Fn => l_calling_fn
,p_log_level_rec => p_log_level_rec);
fa_books_pkg.insert_row
(X_Rowid => l_bks_rowid,
X_Book_Type_Code => px_asset_hdr_rec.book_type_code,
X_Asset_Id => px_asset_hdr_rec.asset_id,
X_Date_Placed_In_Service => x_asset_fin_rec_new.date_placed_in_service,
X_Date_Effective => px_trans_rec.who_info.last_update_date,
X_Deprn_Start_Date => x_asset_fin_rec_new.deprn_start_date,
X_Deprn_Method_Code => x_asset_fin_rec_new.deprn_method_code,
X_Life_In_Months => x_asset_fin_rec_new.life_in_months,
X_Rate_Adjustment_Factor => x_asset_fin_rec_new.rate_adjustment_factor,
X_Adjusted_Cost => x_asset_fin_rec_new.adjusted_cost,
X_Cost => x_asset_fin_rec_new.cost,
X_Original_Cost => p_asset_fin_rec_old.original_cost, -- SLA: x_asset_fin_rec_new.original_cost,
X_Salvage_Value => x_asset_fin_rec_new.salvage_value,
X_Prorate_Convention_Code => x_asset_fin_rec_new.prorate_convention_code,
X_Prorate_Date => x_asset_fin_rec_new.prorate_date,
X_Cost_Change_Flag => x_asset_fin_rec_new.cost_change_flag,
X_Adjustment_Required_Status => x_asset_fin_rec_new.adjustment_required_status,
X_Capitalize_Flag => x_asset_fin_rec_new.capitalize_flag,
X_Retirement_Pending_Flag => x_asset_fin_rec_new.retirement_pending_flag,
X_Depreciate_Flag => x_asset_fin_rec_new.depreciate_flag,
X_Disabled_Flag => x_asset_fin_rec_new.disabled_flag, --HH
X_Last_Update_Date => px_trans_rec.who_info.last_update_date,
X_Last_Updated_By => px_trans_rec.who_info.last_updated_by,
X_Date_Ineffective => NULL,
X_Transaction_Header_Id_In => px_trans_rec.transaction_header_id,
X_Transaction_Header_Id_Out => NULL,
X_Itc_Amount_Id => x_asset_fin_rec_new.itc_amount_id,
X_Itc_Amount => x_asset_fin_rec_new.itc_amount,
X_Retirement_Id => x_asset_fin_rec_new.retirement_id,
X_Tax_Request_Id => x_asset_fin_rec_new.tax_request_id,
X_Itc_Basis => x_asset_fin_rec_new.itc_basis,
X_Basic_Rate => x_asset_fin_rec_new.basic_rate,
X_Adjusted_Rate => x_asset_fin_rec_new.adjusted_rate,
X_Bonus_Rule => x_asset_fin_rec_new.bonus_rule,
X_Ceiling_Name => x_asset_fin_rec_new.ceiling_name,
X_Recoverable_Cost => x_asset_fin_rec_new.recoverable_cost,
X_Last_Update_Login => px_trans_rec.who_info.last_update_login,
X_Adjusted_Capacity => x_asset_fin_rec_new.adjusted_capacity,
X_Fully_Rsvd_Revals_Counter => x_asset_fin_rec_new.fully_rsvd_revals_counter,
X_Idled_Flag => x_asset_fin_rec_new.idled_flag,
X_Period_Counter_Capitalized => x_asset_fin_rec_new.period_counter_capitalized,
X_PC_Fully_Reserved => x_asset_fin_rec_new.period_counter_fully_reserved,
X_Period_Counter_Fully_Retired => x_asset_fin_rec_new.period_counter_fully_retired,
X_Production_Capacity => x_asset_fin_rec_new.production_capacity,
X_Reval_Amortization_Basis => x_asset_fin_rec_new.reval_amortization_basis,
X_Reval_Ceiling => x_asset_fin_rec_new.reval_ceiling,
X_Unit_Of_Measure => x_asset_fin_rec_new.unit_of_measure,
X_Unrevalued_Cost => x_asset_fin_rec_new.unrevalued_cost,
X_Annual_Deprn_Rounding_Flag => x_asset_fin_rec_new.annual_deprn_rounding_flag,
X_Percent_Salvage_Value => x_asset_fin_rec_new.percent_salvage_value,
X_Allowed_Deprn_Limit => x_asset_fin_rec_new.allowed_deprn_limit,
X_Allowed_Deprn_Limit_Amount => x_asset_fin_rec_new.allowed_deprn_limit_amount,
X_Period_Counter_Life_Complete => x_asset_fin_rec_new.period_counter_life_complete,
X_Adjusted_Recoverable_Cost => x_asset_fin_rec_new.adjusted_recoverable_cost,
X_Short_Fiscal_Year_Flag => x_asset_fin_rec_new.short_fiscal_year_flag,
X_Conversion_Date => x_asset_fin_rec_new.conversion_date,
X_Orig_Deprn_Start_Date => x_asset_fin_rec_new.orig_deprn_start_date,
X_Remaining_Life1 => x_asset_fin_rec_new.remaining_life1,
X_Remaining_Life2 => x_asset_fin_rec_new.remaining_life2,
X_Old_Adj_Cost => x_asset_fin_rec_new.old_adjusted_cost,
X_Formula_Factor => x_asset_fin_rec_new.formula_factor,
X_gf_Attribute1 => x_asset_fin_rec_new.global_attribute1,
X_gf_Attribute2 => x_asset_fin_rec_new.global_attribute2,
X_gf_Attribute3 => x_asset_fin_rec_new.global_attribute3,
X_gf_Attribute4 => x_asset_fin_rec_new.global_attribute4,
X_gf_Attribute5 => x_asset_fin_rec_new.global_attribute5,
X_gf_Attribute6 => x_asset_fin_rec_new.global_attribute6,
X_gf_Attribute7 => x_asset_fin_rec_new.global_attribute7,
X_gf_Attribute8 => x_asset_fin_rec_new.global_attribute8,
X_gf_Attribute9 => x_asset_fin_rec_new.global_attribute9,
X_gf_Attribute10 => x_asset_fin_rec_new.global_attribute10,
X_gf_Attribute11 => x_asset_fin_rec_new.global_attribute11,
X_gf_Attribute12 => x_asset_fin_rec_new.global_attribute12,
X_gf_Attribute13 => x_asset_fin_rec_new.global_attribute13,
X_gf_Attribute14 => x_asset_fin_rec_new.global_attribute14,
X_gf_Attribute15 => x_asset_fin_rec_new.global_attribute15,
X_gf_Attribute16 => x_asset_fin_rec_new.global_attribute16,
X_gf_Attribute17 => x_asset_fin_rec_new.global_attribute17,
X_gf_Attribute18 => x_asset_fin_rec_new.global_attribute18,
X_gf_Attribute19 => x_asset_fin_rec_new.global_attribute19,
X_gf_Attribute20 => x_asset_fin_rec_new.global_attribute20,
X_global_attribute_category => x_asset_fin_rec_new.global_attribute_category,
X_group_asset_id => x_asset_fin_rec_new.group_asset_id,
X_salvage_type => x_asset_fin_rec_new.salvage_type,
X_deprn_limit_type => x_asset_fin_rec_new.deprn_limit_type,
X_over_depreciate_option => x_asset_fin_rec_new.over_depreciate_option,
X_super_group_id => x_asset_fin_rec_new.super_group_id,
X_reduction_rate => x_asset_fin_rec_new.reduction_rate,
X_reduce_addition_flag => x_asset_fin_rec_new.reduce_addition_flag,
X_reduce_adjustment_flag => x_asset_fin_rec_new.reduce_adjustment_flag,
X_reduce_retirement_flag => x_asset_fin_rec_new.reduce_retirement_flag,
X_recognize_gain_loss => x_asset_fin_rec_new.recognize_gain_loss,
X_recapture_reserve_flag => x_asset_fin_rec_new.recapture_reserve_flag,
X_limit_proceeds_flag => x_asset_fin_rec_new.limit_proceeds_flag,
X_terminal_gain_loss => x_asset_fin_rec_new.terminal_gain_loss,
X_exclude_proceeds_from_basis => x_asset_fin_rec_new.exclude_proceeds_from_basis,
X_retirement_deprn_option => x_asset_fin_rec_new.retirement_deprn_option,
X_tracking_method => x_asset_fin_rec_new.tracking_method,
X_allocate_to_fully_rsv_flag => x_asset_fin_rec_new.allocate_to_fully_rsv_flag,
X_allocate_to_fully_ret_flag => x_asset_fin_rec_new.allocate_to_fully_ret_flag,
X_exclude_fully_rsv_flag => x_asset_fin_rec_new.exclude_fully_rsv_flag,
X_excess_allocation_option => x_asset_fin_rec_new.excess_allocation_option,
X_depreciation_option => x_asset_fin_rec_new.depreciation_option,
X_member_rollup_flag => x_asset_fin_rec_new.member_rollup_flag,
X_ytd_proceeds => x_asset_fin_rec_new.ytd_proceeds,
X_ltd_proceeds => x_asset_fin_rec_new.ltd_proceeds,
X_eofy_reserve => x_asset_fin_rec_new.eofy_reserve,
X_cip_cost => x_asset_fin_rec_new.cip_cost,
X_terminal_gain_loss_amount => x_asset_fin_rec_new.terminal_gain_loss_amount,
X_ltd_cost_of_removal => x_asset_fin_rec_new.ltd_cost_of_removal,
X_contract_id => x_asset_fin_rec_new.contract_id, -- Bug:6021567
X_extended_deprn_flag => x_asset_fin_rec_new.extended_deprn_flag, -- Japan Tax phase3
X_extended_depreciation_period => x_asset_fin_rec_new.extended_depreciation_period, -- Japan Tax phase3
X_mrc_sob_type_code => p_mrc_sob_type_code,
X_Return_Status => l_status,
X_Calling_Fn => l_calling_fn
,p_log_level_rec => p_log_level_rec);
fa_srvr_msg.add_message(calling_fn => 'fa_addition_pvt.insert_asset');
UPDATE FA_BOOKS
SET rate_in_use = l_rate_in_use
WHERE book_type_code = px_asset_hdr_rec.book_type_code
AND asset_id = px_asset_hdr_rec.asset_id
AND date_ineffective is null;
fa_debug_pkg.add('pvt adj api', 'logic for update deprn detail/summary', 'Starts',
p_log_level_rec => p_log_level_rec);
select nvl(sum(deprn_adjustment_amount), 0)
into l_deprn_adjustment_amount
from fa_deprn_detail
where book_type_code = px_asset_hdr_rec.book_type_code
and asset_id = px_asset_hdr_rec.asset_id
and deprn_source_code = 'B';
select nvl(sum(decode(debit_credit_flag,
'DR', adjustment_amount,
-adjustment_amount)), 0)
into l_deprn_exp_amort_nbv
from fa_adjustments
where book_type_code = px_asset_hdr_rec.book_type_code
and asset_id = px_asset_hdr_rec.asset_id
and source_type_code = 'DEPRECIATION'
and adjustment_type = 'EXPENSE';
select nvl(sum(decode(debit_credit_flag,
'CR', adjustment_amount,
-adjustment_amount)), 0)
into l_reserve_adjustment_amount
from fa_adjustments
where book_type_code = px_asset_hdr_rec.book_type_code
and asset_id = px_asset_hdr_rec.asset_id
and source_type_code = 'ADJUSTMENT'
and adjustment_type = 'RESERVE';
select nvl(sum(deprn_adjustment_amount), 0)
into l_deprn_adjustment_amount
from fa_deprn_detail_mrc_v
where book_type_code = px_asset_hdr_rec.book_type_code
and asset_id = px_asset_hdr_rec.asset_id
and deprn_source_code = 'B';
select nvl(sum(decode(debit_credit_flag,
'DR', adjustment_amount,
-adjustment_amount)), 0)
into l_deprn_exp_amort_nbv
from fa_adjustments_mrc_v
where book_type_code = px_asset_hdr_rec.book_type_code
and asset_id = px_asset_hdr_rec.asset_id
and source_type_code = 'DEPRECIATION'
and adjustment_type = 'EXPENSE';
select nvl(sum(decode(debit_credit_flag,
'CR', adjustment_amount,
-adjustment_amount)), 0)
into l_reserve_adjustment_amount
from fa_adjustments_mrc_v
where book_type_code = px_asset_hdr_rec.book_type_code
and asset_id = px_asset_hdr_rec.asset_id
and source_type_code = 'ADJUSTMENT'
and adjustment_type = 'RESERVE';
-- FAVGRECB.pls after update in deprn summary because of which reserve amount
-- is not considered when calculating l_reserve_adjustment_amount in above select statement
-- causing wrong value of reserve to be updated in 'BOOKS' row of deprn summary and detail.
if p_asset_type_rec.asset_type = 'GROUP' then
if p_group_reclass_options_rec.group_reclass_type = 'MANUAL' then
if p_reclass_src_dest = 'SOURCE' then
l_reserve_adjustment_amount := l_reserve_adjustment_amount +
-1 * nvl(p_group_reclass_options_rec.reserve_amount,0) ;
FA_DEPRN_SUMMARY_PKG.Update_Row
(X_Book_Type_Code => px_asset_hdr_rec.book_type_code,
X_Asset_Id => px_asset_hdr_rec.asset_id,
X_Deprn_Run_Date => px_trans_rec.who_info.last_update_date,
X_Deprn_Amount => x_asset_deprn_rec_new.deprn_amount,
X_Ytd_Deprn => x_asset_deprn_rec_new.ytd_deprn -
l_deprn_exp_amort_nbv,
X_Deprn_Reserve => x_asset_deprn_rec_new.deprn_reserve -
l_deprn_exp_amort_nbv -
l_reserve_adjustment_amount,
X_Deprn_Source_Code => 'BOOKS',
X_Adjusted_Cost => x_asset_fin_rec_new.adjusted_cost,
X_Bonus_Rate => NULL,
X_Ltd_Production => NULL,
X_Period_Counter => p_period_rec.period_counter - 1,
X_Production => NULL,
X_Reval_Amortization => x_asset_deprn_rec_new.reval_amortization,
X_Reval_Amortization_Basis => x_asset_deprn_rec_new.reval_amortization_basis,
X_Reval_Deprn_Expense => x_asset_deprn_rec_new.reval_deprn_expense,
X_Reval_Reserve => x_asset_deprn_rec_new.reval_deprn_reserve,
X_Ytd_Production => NULL,
X_Ytd_Reval_Deprn_Expense => x_asset_deprn_rec_new.reval_ytd_deprn,
X_Bonus_Deprn_Amount => x_asset_deprn_rec_new.bonus_deprn_amount,
X_Bonus_Ytd_Deprn => x_asset_deprn_rec_new.bonus_ytd_deprn,
X_Bonus_Deprn_Reserve => x_asset_deprn_rec_new.bonus_deprn_reserve,
X_mrc_sob_type_code => p_mrc_sob_type_code,
X_Calling_Fn => l_calling_fn
,p_log_level_rec => p_log_level_rec);
last_update_date => sysdate,
last_updated_by => -1,
last_update_login => -1,
init_message_flag => 'NO') then raise adj_err;
fa_books_pkg.update_row
(X_asset_id => px_asset_hdr_rec.asset_id,
X_book_type_code => px_asset_hdr_rec.book_type_code,
X_rate_adjustment_factor => x_asset_fin_rec_new.rate_adjustment_factor,
X_reval_amortization_basis => x_asset_fin_rec_new.reval_amortization_basis,
X_adjusted_cost => x_asset_fin_rec_new.adjusted_cost,
X_adjusted_capacity => x_asset_fin_rec_new.adjusted_capacity,
X_formula_factor => x_asset_fin_rec_new.formula_factor,
X_eofy_reserve => x_asset_fin_rec_new.eofy_reserve,
X_mrc_sob_type_code => p_mrc_sob_type_code,
X_calling_fn => l_calling_fn
,p_log_level_rec => p_log_level_rec);
SLA: obsolete - must keep these since cost is inserted at addition
-- now update the primary or reporting amounts accordingly
if (p_mrc_sob_type_code <> 'R') then
delete from fa_adjustments
where asset_id = px_asset_hdr_rec.asset_id
and book_type_code = px_asset_hdr_rec.book_type_code
and adjustment_type in ('COST', 'COST CLEARING');
delete from fa_adjustments_mrc_v
where asset_id = px_asset_hdr_rec.asset_id
and book_type_code = px_asset_hdr_rec.book_type_code
and adjustment_type in ('COST', 'COST CLEARING');
FA_DEPRN_SUMMARY_PKG.Update_Row
(X_Book_Type_Code => px_asset_hdr_rec.book_type_code,
X_Asset_Id => px_asset_hdr_rec.asset_id,
X_Adjusted_Cost => x_asset_fin_rec_new.adjusted_cost,
X_Period_Counter => p_period_rec.period_counter - 1,
X_Reval_Amortization_Basis => x_asset_deprn_rec_new.reval_amortization_basis,
X_mrc_sob_type_code => p_mrc_sob_type_code,
X_Calling_Fn => l_calling_fn
,p_log_level_rec => p_log_level_rec);