DBA Data[Home] [Help]

PACKAGE: APPS.FA_CALC_DEPRN_BASIS1_PKG

Source


1 PACKAGE FA_CALC_DEPRN_BASIS1_PKG AUTHID CURRENT_USER as
2 /* $Header: faxcdb1s.pls 120.19.12020000.2 2013/03/19 18:00:42 dvjoshi ship $ */
3 
4   ----------------------------------------------------
5   -- Input Variables
6   ----------------------------------------------------
7 
8         g_rule_in     fa_std_types.fa_deprn_rule_in_struct default null;
9 
10 --	event_type			VARCHAR2(20);
11 --	asset_id			NUMBER(15);
12 --	group_asset_id			NUMBER;
13 --	book_type_code			VARCHAR2(15);
14 --	asset_type			VARCHAR2(11);
15 --	depreciate_flag			VARCHAR2(3);
16 --	method_code			VARCHAR2(12);
17 --	life_in_months			NUMBER(4);
18 --	method_id			NUMBER(15);
19 --	method_type			VARCHAR2(10);
20 --	calc_basis			VARCHAR2(4);
21 --	adjustment_amount		NUMBER;
22 --	transaction_flag		VARCHAR2(3);
23 --	cost				NUMBER;
24 --	salvage_value			NUMBER;
25 --	recoverable_cost		NUMBER;
26 --	adjusted_cost			NUMBER;
27 --	current_total_rsv		NUMBER;
28 --	current_rsv			NUMBER;
29 --	current_total_ytd		NUMBER;
30 --	current_ytd			NUMBER;
31 --	hyp_basis			NUMBER;
32 --	hyp_total_rsv			NUMBER;
33 --	hyp_rsv				NUMBER;
34 --	hyp_total_ytd			NUMBER;
35 --	hyp_ytd				NUMBER;
36 --	old_adjusted_cost		NUMBER;
37 --	old_raf				NUMBER;
38 --	old_formula_factor		NUMBER;
39 
40 	-- Add new variable
41 --	amortization_start_date		DATE;
42 
43 	-- Add new variables for Group Depreciation
44 --	transaction_header_id           NUMBER(15);
45 --      member_transaction_header_id    NUMBER(15);
46 --      member_transaction_type_code    VARCHAR2(30);
47 --      member_proceeds                 NUMBER;
48 --	transaction_date_entered        DATE;
49 --	adj_transaction_header_id       NUMBER(15);
50 --      adj_mem_transaction_header_id NUMBER(15);
51 --      adj_transaction_date_entered    DATE;
52 --	period_counter                  NUMBER(15);
53 --	fiscal_year                     NUMBER(15);
54 --      period_num                      NUMBER(15);
55 --	proceeds_of_sale                NUMBER;
56 --	cost_of_removal                 NUMBER;
57 --	reduction_rate                  NUMBER;
58 --      eofy_reserve                    NUMBER;
59 --      adj_reserve                     NUMBER;
60 --      reserve_retired                 NUMBER;
61 --      recognize_gain_loss             VARCHAR2(30);
62 --	tracking_method                 VARCHAR2(30);
63 --	allocate_to_fully_rsv_flag      VARCHAR2(1);
64 --	allocate_to_fully_ret_flag      VARCHAR2(1);
65 --	excess_allocation_option        VARCHAR2(30);
66 --	depreciation_option             VARCHAR2(30);
67 --	member_rollup_flag              VARCHAR2(1);
68 --      unplanned_amount                NUMBER;
69 --	eofy_recoverable_cost           NUMBER;
70 --	eop_recoverable_cost            NUMBER;
71 --	eofy_salvage_value              NUMBER;
72 --	eop_salvage_value               NUMBER;
73 --	used_by_adjustment              VARCHAR2(15);
74 --      eofy_flag                       VARCHAR2(1);
75 --	apply_reduction_flag            VARCHAR2(1);
76 --      mrc_sob_type_code               VARCHAR2(1);
77 
78 --	reduction_amount                NUMBER;
79 --      use_old_adj_cost_flag           VARCHAR2(1);
80 
81   ----------------------------------------------------
82   -- Output Variables
83   ----------------------------------------------------
84 
85         g_rule_out    fa_std_types.fa_deprn_rule_out_struct default null;
86 
87 --	new_adjusted_cost		NUMBER;
88 --	new_raf				NUMBER;
89 --	new_formula_factor		NUMBER;
90 
91 -----------------------------------------------------------------
92 -- Function: faxcdb
93 --
94 -- Calculate Adjusted cost, rate adjustment factor and
95 -- formula factor
96 -----------------------------------------------------------------
97 
98 FUNCTION faxcdb(
99   	        rule_in                    IN  fa_std_types.fa_deprn_rule_in_struct,
100 		rule_out                   OUT NOCOPY fa_std_types.fa_deprn_rule_out_struct,
101                 p_amortization_start_date  IN  date default NULL
102 		, p_log_level_rec        IN     FA_API_TYPES.log_level_rec_type)
103 return boolean;
104 
105 -----------------------------------------------------------------
106 -- FUNCTION: CALC_REDUCITON_AMOUNT
107 --
108 -- This function calculates the reduction rate's applying amounts
109 -----------------------------------------------------------------
110 FUNCTION CALC_REDUCTION_AMOUNT
111   (
112     p_asset_id                    IN  NUMBER,
113     p_group_asset_id              IN  NUMBER,
114     p_asset_type                  IN  VARCHAR2,
115     p_book_type_code              IN  VARCHAR2,
116     p_period_counter              IN  NUMBER,
117     p_transaction_date            IN  DATE     default null,
118     p_half_year_rule_flag         IN  VARCHAR2 default null,
119     p_mrc_sob_type_code           IN  VARCHAR2 default 'N',
120     p_set_of_books_id             IN  NUMBER,
121     x_change_in_cost              OUT NOCOPY NUMBER,
122     x_change_in_cost_to_reduce    OUT NOCOPY NUMBER,
123     x_total_change_in_cost        OUT NOCOPY NUMBER,
124     x_net_proceeds                OUT NOCOPY NUMBER,
125     x_net_proceeds_to_reduce      OUT NOCOPY NUMBER,
126     x_total_net_proceeds          OUT NOCOPY NUMBER,
127     x_first_half_cost             OUT NOCOPY NUMBER,
128     x_first_half_cost_to_reduce   OUT NOCOPY NUMBER,
129     x_second_half_cost            OUT NOCOPY NUMBER,
130     x_second_half_cost_to_reduce  OUT NOCOPY NUMBER
131   , p_log_level_rec        IN     FA_API_TYPES.log_level_rec_type)
132 return boolean;
133 
134 --------------------------------------------------------------
135 -- Function: GET_REC_COST
136 --
137 -- This function is to get recoverable cost and salvage value
138 -- at the period of parameter's period counter
139 -------------------------------------------------------------
140 FUNCTION GET_REC_COST
141   (
142     p_asset_id                 IN  NUMBER,
143     p_book_type_code           IN  VARCHAR2,
144     p_fiscal_year              IN  NUMBER,
145     p_period_num               IN  NUMBER,
146     p_asset_type               IN  VARCHAR2 default null,
147     p_recoverable_cost         IN  NUMBER   default null,
148     p_salvage_value            IN  NUMBER   default null,
149     p_transaction_date_entered IN  DATE     default null,
150     p_mrc_sob_type_code        IN  VARCHAR2 default 'N',
151     p_set_of_books_id          IN  NUMBER,
152     x_recoverable_cost         OUT NOCOPY NUMBER,
153     x_salvage_value            OUT NOCOPY NUMBER
154   , p_log_level_rec        IN     FA_API_TYPES.log_level_rec_type)
155 return boolean;
156 
157 --------------------------------------------------------------
158 -- Function: GET_EOFY_EOP
159 --
160 -- This function is to get recoverable cost and salvage value
161 -- at the end of last fiscal year and last period
162 -------------------------------------------------------------
163 
164 FUNCTION GET_EOFY_EOP
165   (
166     p_asset_id                 IN  NUMBER,
167     p_book_type_code           IN  VARCHAR2,
168     p_fiscal_year              IN  NUMBER,
169     p_period_num               IN  NUMBER,
170     p_asset_type               IN  VARCHAR2 default null,
171     p_recoverable_cost         IN  NUMBER   default null,
172     p_salvage_value            IN  NUMBER   default null,
173     p_transaction_date_entered IN  DATE     default null,
174     p_period_counter           IN  NUMBER   default null,
175     p_mrc_sob_type_code        IN  VARCHAR2 default null,
176     p_set_of_books_id          IN  NUMBER,
177     x_eofy_recoverable_cost    OUT NOCOPY NUMBER,
178     x_eofy_salvage_value       OUT NOCOPY NUMBER,
179     x_eop_recoverable_cost     OUT NOCOPY NUMBER,
180     x_eop_salvage_value        OUT NOCOPY NUMBER
181   , p_log_level_rec        IN     FA_API_TYPES.log_level_rec_type)
182 return boolean;
183 
184 --------------------------------------------------------
185 -- Function: CALL_DEPRN_BASIS
186 --
187 -- This function is the cover function to call faxcdb
188 -- from Transaction API and depreciation Engine
189 --------------------------------------------------------
190 FUNCTION CALL_DEPRN_BASIS(
191      p_event_type             IN            varchar2,
192      p_asset_fin_rec_new      IN            fa_api_types.asset_fin_rec_type default null,
193      p_asset_fin_rec_old      IN            fa_api_types.asset_fin_rec_type default null,
194      p_asset_hdr_rec          IN            fa_api_types.asset_hdr_rec_type default null,
195      p_asset_type_rec         IN            fa_api_types.asset_type_rec_type default null,
196      p_asset_deprn_rec        IN            fa_api_types.asset_deprn_rec_type default null,
197      p_trans_rec              IN            fa_api_types.trans_rec_type default null,
198      p_trans_rec_adj          IN            fa_api_types.trans_rec_type default null,
199      p_period_rec             IN            fa_api_types.period_rec_type default null,
200      p_asset_retire_rec       IN            fa_api_types.asset_retire_rec_type default null,
201      p_unplanned_deprn_rec    IN            fa_api_types.unplanned_deprn_rec_type default null,
202      p_dpr                    IN            fa_std_types.dpr_struct default null,
203      p_fiscal_year            IN            number default 0,
204      p_period_num             IN            number default null,
205      p_period_counter         IN            number default 0,
206      p_recoverable_cost       IN            number default 0,
207      p_salvage_value          IN            number default 0,
208      p_adjusted_cost          IN            number default 0,
209      p_current_total_rsv      IN            number default 0,
210      p_current_rsv            IN            number default 0,
211      p_current_total_ytd      IN            number default 0,
212      p_current_ytd            IN            number default 0,
213      p_hyp_basis              IN            number default 0,
214      p_hyp_total_rsv          IN            number default 0,
215      p_hyp_rsv                IN            number default 0,
216      p_hyp_total_ytd          IN            number default 0,
217      p_hyp_ytd                IN            number default 0,
218      p_eofy_recoverable_cost  IN            number default null,
219      p_eop_recoverable_cost   IN            number default null,
220      p_eofy_salvage_value     IN            number default null,
221      p_eop_salvage_value      IN            number default null,
222      p_eofy_reserve           IN            number default null,
223      p_adj_reserve            IN            number default null,
224      p_reserve_retired        IN            number default null,
225      p_used_by_adjustment     IN            varchar2 default null,
226      p_eofy_flag              IN            varchar2 default null,
227      p_apply_reduction_flag   IN            varchar2 default null,
228      p_trx_adjustment_amount  IN            number default null, --bug#16426081
229      p_mrc_sob_type_code      IN            varchar2 default 'N',
230      px_new_adjusted_cost     IN OUT NOCOPY number,
231      px_new_raf               IN OUT NOCOPY number,
232      px_new_formula_factor    IN OUT NOCOPY number
233 , p_log_level_rec        IN     FA_API_TYPES.log_level_rec_type) return BOOLEAN;
234 
235 --------------------------------------------------------
236 -- Function: CALL_DEPRN_BASIS
237 --
238 -- called from depreciation Engine(pl/sql)
239 -- This is same as CALL_DEPRN_BASIS above except additional
240 -- parameter x_annual_deprn_rounding_flag
241 -- This new output is necessary for flat rate extension
242 --------------------------------------------------------
243 FUNCTION CALL_DEPRN_BASIS(
244      p_event_type             IN            varchar2,
245      p_asset_fin_rec_new      IN            fa_api_types.asset_fin_rec_type default null,
246      p_asset_fin_rec_old      IN            fa_api_types.asset_fin_rec_type default null,
247      p_asset_hdr_rec          IN            fa_api_types.asset_hdr_rec_type default null,
248      p_asset_type_rec         IN            fa_api_types.asset_type_rec_type default null,
249      p_asset_deprn_rec        IN            fa_api_types.asset_deprn_rec_type default null,
250      p_trans_rec              IN            fa_api_types.trans_rec_type default null,
251      p_trans_rec_adj          IN            fa_api_types.trans_rec_type default null,
252      p_period_rec             IN            fa_api_types.period_rec_type default null,
253      p_asset_retire_rec       IN            fa_api_types.asset_retire_rec_type default null,
254      p_unplanned_deprn_rec    IN            fa_api_types.unplanned_deprn_rec_type default null,
255      p_dpr                    IN            fa_std_types.dpr_struct default null,
256      p_fiscal_year            IN            number default 0,
257      p_period_num             IN            number default null,
258      p_period_counter         IN            number default 0,
259      p_recoverable_cost       IN            number default 0,
260      p_salvage_value          IN            number default 0,
261      p_adjusted_cost          IN            number default 0,
262      p_current_total_rsv      IN            number default 0,
263      p_current_rsv            IN            number default 0,
264      p_current_total_ytd      IN            number default 0,
265      p_current_ytd            IN            number default 0,
266      p_hyp_basis              IN            number default 0,
267      p_hyp_total_rsv          IN            number default 0,
268      p_hyp_rsv                IN            number default 0,
269      p_hyp_total_ytd          IN            number default 0,
270      p_hyp_ytd                IN            number default 0,
271      p_eofy_recoverable_cost  IN            number default null,
272      p_eop_recoverable_cost   IN            number default null,
273      p_eofy_salvage_value     IN            number default null,
274      p_eop_salvage_value      IN            number default null,
275      p_eofy_reserve           IN            number default null,
276      p_adj_reserve            IN            number default null,
277      p_reserve_retired        IN            number default null,
278      p_used_by_adjustment     IN            varchar2 default null,
279      p_eofy_flag              IN            varchar2 default null,
280      p_apply_reduction_flag   IN            varchar2 default null,
281      p_trx_adjustment_amount  IN            number default null, --bug#16426081
282      p_mrc_sob_type_code      IN            varchar2 default 'N',
283      px_new_adjusted_cost     IN OUT NOCOPY number,
284      px_new_raf               IN OUT NOCOPY number,
285      px_new_formula_factor    IN OUT NOCOPY number,
286      x_annual_deprn_rounding_flag IN OUT NOCOPY varchar2
287 , p_log_level_rec        IN     FA_API_TYPES.log_level_rec_type) return BOOLEAN;
288 
289 ------------------------------------------------------------
290 -- Function: CALC_PROCEEDS
291 --
292 -- This function is to calculate Year-to-Date Proceeds
293 -- and Life-to Date Proceeds of Do not Recognized Gain/Loss
294 ------------------------------------------------------------
295 
296 Function CALC_PROCEEDS (
297     p_asset_id                    IN         NUMBER,
298     p_asset_type                  IN         VARCHAR2,
299     p_book_type_code              IN         VARCHAR2,
300     p_period_counter              IN         NUMBER,
301     p_mrc_sob_type_code           IN         VARCHAR2,
302     p_set_of_books_id             IN  NUMBER,
303     x_ltd_proceeds                OUT NOCOPY NUMBER,
304     x_ytd_proceeds                OUT NOCOPY NUMBER
305 , p_log_level_rec        IN     FA_API_TYPES.log_level_rec_type) return BOOLEAN;
306 
307 -----------------------------------------------------------------
308 -- Function: CALC_RETIRED_COST
309 --
310 -- This function calculate summary of retired cost.
311 -- This function is used by Rule 'POSITIVE_REDUCTION'.
312 -----------------------------------------------------------------
313 
314 FUNCTION CALC_RETIRED_COST (
315     p_event_type                  IN         VARCHAR2,
316     p_asset_id                    IN         NUMBER,
317     p_asset_type                  IN         VARCHAR2,
318     p_book_type_code              IN         VARCHAR2,
319     p_fiscal_year                 IN         NUMBER,
320     p_period_num                  IN         NUMBER,
321     p_adjustment_amount           IN         NUMBER,
322     p_ltd_ytd_flag                IN         VARCHAR2,
323     p_mrc_sob_type_code           IN         VARCHAR2,
324     p_set_of_books_id             IN  NUMBER,
325     x_retired_cost                OUT NOCOPY NUMBER
326   , p_log_level_rec        IN     FA_API_TYPES.log_level_rec_type) return BOOLEAN;
327 
328 -----------------------------------------------------------------
329 -- Function: GET_MEM_TRANS_INFO
330 --
331 -- This function is to get the transaction infomation of member
332 -----------------------------------------------------------------
333 Function GET_MEM_TRANS_INFO (
334     p_member_transaction_header_id  IN         NUMBER,
335     p_mrc_sob_type_code             IN         VARCHAR2,
336     p_set_of_books_id             IN  NUMBER,
337     x_member_transaction_type_code  OUT NOCOPY VARCHAR2,
338     x_member_proceeds               OUT NOCOPY NUMBER,
339     x_member_reduction_rate         OUT NOCOPY NUMBER,
340     x_recognize_gain_loss           OUT NOCOPY VARCHAR2
341    , p_log_level_rec        IN     FA_API_TYPES.log_level_rec_type) return BOOLEAN;
342 
343 ---------------------------------------------------------------------
344 -- Function: SERVER_VALIDATION
345 --
346 -- This function is to validate unexpected values
347 --
348 ---------------------------------------------------------------------
349 
350 Function SERVER_VALIDATION(
351 p_log_level_rec        IN     FA_API_TYPES.log_level_rec_type)
352 return boolean;
353 
354 END FA_CALC_DEPRN_BASIS1_PKG;