[Home] [Help]
PACKAGE BODY: APPS.FA_DEPRN_EVENTS_PKG
Source
1 package body FA_DEPRN_EVENTS_PKG as
2 /* $Header: fadpevnb.pls 120.19.12020000.4 2012/12/04 18:23:16 spooyath ship $ */
3
4 g_log_level_rec fa_api_types.log_level_rec_type;
5
6 PROCEDURE process_deprn_events
7 (p_book_type_code varchar2,
8 p_period_counter number,
9 p_total_requests NUMBER,
10 p_request_number NUMBER,
11 p_close_period NUMBER,
12 x_return_status OUT NOCOPY number) IS
13
14 l_asset_id_tbl FA_XLA_EVENTS_PVT.number_tbl_type;
15 l_rowid_tbl rowid_tbl_type;
16 l_event_id_tbl FA_XLA_EVENTS_PVT.number_tbl_type;
17 l_event_date date;
18
19 l_sob_index number;
20 l_sob_tbl fa_cache_pkg.fazcrsob_sob_tbl_type;
21
22 l_batch_size number;
23 l_calling_fn varchar2(60) := 'FA_DEPRN_EVENTS_PKG.process_deprn_events';
24
25 error_found exception;
26
27 CURSOR DEPRN_EVENTS (p_book_type_code varchar2,
28 p_period_counter number
29 ) IS
30 select rowid,
31 asset_id
32 from fa_deprn_summary
33 where book_type_code = p_book_type_code
34 and period_counter = p_period_counter
35 and event_id is null
36 and (deprn_amount - deprn_adjustment_amount <> 0 or
37 reval_amortization <> 0)
38 and MOD(asset_id, p_total_requests) = (p_request_number - 1)
39 and deprn_source_code <> 'TRACK';
40
41 CURSOR MC_DEPRN_EVENTS (p_set_of_books_id number,
42 p_book_type_code varchar2,
43 p_period_counter number
44 ) IS
45 select rowid,
46 asset_id
47 from fa_mc_deprn_summary
48 where set_of_books_id = p_set_of_books_id
49 and book_type_code = p_book_type_code
50 and period_counter = p_period_counter
51 and event_id is null
52 and (deprn_amount - deprn_adjustment_amount <> 0 or
53 reval_amortization <> 0)
54 and MOD(asset_id, p_total_requests) = (p_request_number - 1)
55 and deprn_source_code <> 'TRACK';
56
57 l_deprn_run_id number;
58
59 --Secondary Changes
60 l_secondary_sob_id number;
61 l_secondary_event_id_tbl FA_XLA_EVENTS_PVT.number_tbl_type;
62 l_secondary_deprn_run_id number;
63
64 BEGIN
65
66 if (not g_log_level_rec.initialized) then
67 if (NOT fa_util_pub.get_log_level_rec (
68 x_log_level_rec => g_log_level_rec
69 )) then
70 raise error_found;
71 end if;
72 end if;
73
74 -- clear the debug stack for each line
75 FA_DEBUG_PKG.Initialize;
76
77 if (g_log_level_rec.statement_level) then
78 fa_debug_pkg.add(l_calling_fn, 'at ', 'begin' ,p_log_level_rec => g_log_level_rec);
79 end if;
80
81 if not fa_cache_pkg.fazcbc(X_book => p_book_type_code,
82 p_log_level_rec => g_log_level_rec) then
83 raise error_found;
84 end if;
85
86 if not fa_cache_pkg.fazcdp(x_book_type_code => p_book_type_code,
87 x_period_counter => p_period_counter,
88 x_effective_date => null,
89 p_log_level_rec => g_log_level_rec) then
90 raise error_found;
91 end if;
92
93 if (g_log_level_rec.statement_level) then
94 fa_debug_pkg.add(l_calling_fn, 'setting ', 'batch size',
95 p_log_level_rec => g_log_level_rec);
96 end if;
97
98 l_batch_size := nvl(fa_cache_pkg.fa_batch_size, 200);
99
100 select fa_deprn_summary_s.nextval
101 into l_deprn_run_id
102 from dual;
103
104 if (g_log_level_rec.statement_level) then
105 fa_debug_pkg.add(l_calling_fn, 'initializing', 'debug stack',
106 p_log_level_rec => g_log_level_rec);
107 end if;
108
109 if (g_log_level_rec.statement_level) then
110 fa_debug_pkg.add(l_calling_fn, 'opening', 'deprn_events cursor',
111 p_log_level_rec => g_log_level_rec);
112 end if;
113
114 OPEN deprn_events(p_book_type_code => p_book_type_code,
115 p_period_counter => p_period_counter);
116
117 loop
118
119 if (g_log_level_rec.statement_level) then
120 fa_debug_pkg.add(l_calling_fn, 'in', 'loop',
121 p_log_level_rec => g_log_level_rec);
122 end if;
123
124 FETCH deprn_events bulk collect
125 into l_rowid_tbl,
126 l_asset_id_tbl
127 LIMIT l_batch_size;
128
129 if (g_log_level_rec.statement_level) then
130 fa_debug_pkg.add(l_calling_fn, 'l_asset_id_tbl.count', l_asset_id_tbl.count,
131 p_log_level_rec => g_log_level_rec);
132 end if;
133
134 if (l_asset_id_tbl.count = 0) then
135 exit;
136 end if;
137
138 if (g_log_level_rec.statement_level) then
139 fa_debug_pkg.add(l_calling_fn, 'calling', 'xla event api',
140 p_log_level_rec => g_log_level_rec);
141 end if;
142
143 l_event_date :=
144 greatest(fa_cache_pkg.fazcdp_record.calendar_period_open_date,
145 least(nvl(fa_cache_pkg.fazcdp_record.calendar_period_close_date,
146 sysdate),
147 sysdate));
148
149 fa_xla_events_pvt.create_bulk_deprn_event
150 (p_asset_id_tbl => l_asset_id_tbl,
151 p_book_type_code => p_book_type_code,
152 p_period_counter => p_period_counter,
153 p_period_close_date => l_event_date,
154 p_deprn_run_id => l_deprn_run_id,
155 p_entity_type_code => 'DEPRECIATION',
156 x_event_id_tbl => l_event_id_tbl,
157 p_calling_fn => l_calling_fn,
158 p_log_level_rec => g_log_level_rec);
159
160 if (g_log_level_rec.statement_level) then
161 fa_debug_pkg.add(l_calling_fn, 'performing', 'bulk update - primary',
162 p_log_level_rec => g_log_level_rec);
163 end if;
164
165 FORALL l_count in 1..l_asset_id_tbl.count
166 UPDATE FA_DEPRN_SUMMARY
167 SET event_id = l_event_id_tbl(l_count),
168 deprn_run_id = l_deprn_run_id
169 WHERE rowid = l_rowid_tbl(l_count);
170
171 FORALL l_count in 1..l_asset_id_tbl.count
172 UPDATE FA_DEPRN_DETAIL
173 SET event_id = l_event_id_tbl(l_count),
174 deprn_run_id = l_deprn_run_id
175 WHERE asset_id = l_asset_id_tbl(l_count)
176 AND book_type_code = p_book_type_code
177 AND period_counter = p_period_counter;
178
179 if (g_log_level_rec.statement_level) then
180 fa_debug_pkg.add(l_calling_fn, 'performing', 'bulk update - reporting',
181 p_log_level_rec => g_log_level_rec);
182 end if;
183
184 -- now process all matching mrc rows
185 FORALL l_count in 1..l_asset_id_tbl.count
186 UPDATE FA_MC_DEPRN_SUMMARY
187 SET event_id = l_event_id_tbl(l_count),
188 deprn_run_id = l_deprn_run_id
189 WHERE asset_id = l_asset_id_tbl(l_count)
190 AND book_type_code = p_book_type_code
191 AND period_counter = p_period_counter;
192
193 FORALL l_count in 1..l_asset_id_tbl.count
194 UPDATE FA_MC_DEPRN_DETAIL
195 SET event_id = l_event_id_tbl(l_count),
196 deprn_run_id = l_deprn_run_id
197 WHERE asset_id = l_asset_id_tbl(l_count)
198 AND book_type_code = p_book_type_code
199 AND period_counter = p_period_counter;
200
201 if (g_log_level_rec.statement_level) then
202 fa_debug_pkg.add(l_calling_fn, 'done', 'bulk updates',
203 p_log_level_rec => g_log_level_rec);
204 end if;
205
206 FORALL l_count in 1..l_asset_id_tbl.count
207 INSERT into fa_deprn_events
208 (asset_id ,
209 book_type_code ,
210 period_counter ,
211 deprn_run_id ,
212 deprn_run_date ,
213 event_id ,
214 reversal_event_id
215 )
216 VALUES
217 (l_asset_id_tbl(l_count),
218 p_book_type_code,
219 p_period_counter,
220 l_deprn_run_id,
221 sysdate,
222 l_event_id_tbl(l_count),
223 null);
224
225 if (g_log_level_rec.statement_level) then
226 fa_debug_pkg.add(l_calling_fn, 'done', 'bulk insert',
227 p_log_level_rec => g_log_level_rec);
228 end if;
229
230 commit;
231
232 --Secondary Changes
233 l_secondary_sob_id := FA_XLA_EVENTS_PVT.get_secondary_sob_id(p_book_type_code);
234 if(l_secondary_sob_id is not null) then
235
236 if (g_log_level_rec.statement_level) then
237 fa_debug_pkg.add(l_calling_fn, 'before', 'secondary bulk insert',
238 p_log_level_rec => g_log_level_rec);
239 end if;
240
241 select fa_deprn_summary_s.nextval
242 into l_secondary_deprn_run_id
243 from dual;
244
245 fa_xla_events_pvt.create_bulk_deprn_event
246 (p_asset_id_tbl => l_asset_id_tbl,
247 p_book_type_code => p_book_type_code,
248 p_period_counter => p_period_counter,
249 p_period_close_date => l_event_date,
250 p_deprn_run_id => l_secondary_deprn_run_id,
251 p_entity_type_code => 'DEPRECIATION',
252 p_secondary_sob_id => l_secondary_sob_id,
253 x_event_id_tbl => l_secondary_event_id_tbl,
254 p_calling_fn => l_calling_fn,
255 p_log_level_rec => g_log_level_rec);
256
257 if (g_log_level_rec.statement_level) then
258 fa_debug_pkg.add(l_calling_fn, 'after', 'secondary bulk insert',
259 p_log_level_rec => g_log_level_rec);
260 end if;
261
262 FORALL l_count in 1..l_asset_id_tbl.count
263 UPDATE FA_MC_DEPRN_SUMMARY
264 SET event_id = l_secondary_event_id_tbl(l_count),
265 deprn_run_id = l_secondary_deprn_run_id
266 WHERE asset_id = l_asset_id_tbl(l_count)
267 AND book_type_code = p_book_type_code
268 AND period_counter = p_period_counter
269 and set_of_books_id = l_secondary_sob_id;
270
271 FORALL l_count in 1..l_asset_id_tbl.count
272 UPDATE FA_MC_DEPRN_DETAIL
273 SET event_id = l_secondary_event_id_tbl(l_count),
274 deprn_run_id = l_secondary_deprn_run_id
275 WHERE asset_id = l_asset_id_tbl(l_count)
276 AND book_type_code = p_book_type_code
277 AND period_counter = p_period_counter
278 and set_of_books_id = l_secondary_sob_id;
279
280 end if;
281 commit;
282
283 end loop;
284
285 CLOSE deprn_events;
286
287 -- now find any mrc rows which are not processed yet and update
288 if not FA_CACHE_PKG.fazcrsob
289 (x_book_type_code => p_book_type_code,
290 x_sob_tbl => l_sob_tbl,
291 p_log_level_rec => g_log_level_rec) then
292 raise error_found;
293 end if;
294
295 -- begin at index of 1 not 0 as in apis
296 FOR l_sob_index in 1..l_sob_tbl.count LOOP
297
298 if (g_log_level_rec.statement_level) then
299 fa_debug_pkg.add(l_calling_fn, 'opening mc_deprn_events for sob', l_sob_tbl(l_sob_index),
300 p_log_level_rec => g_log_level_rec);
301 end if;
302
303 OPEN mc_deprn_events(p_set_of_books_id => l_sob_tbl(l_sob_index),
304 p_book_type_code => p_book_type_code,
305 p_period_counter => p_period_counter);
306
307 loop
308
309 if (g_log_level_rec.statement_level) then
310 fa_debug_pkg.add(l_calling_fn, 'in', 'mrc loop',
311 p_log_level_rec => g_log_level_rec);
312 end if;
313
314 FETCH mc_deprn_events bulk collect
315 into l_rowid_tbl,
316 l_asset_id_tbl
317 LIMIT l_batch_size;
318
319 if (g_log_level_rec.statement_level) then
320 fa_debug_pkg.add(l_calling_fn, 'l_asset_id_tbl.count', l_asset_id_tbl.count,
321 p_log_level_rec => g_log_level_rec);
322 end if;
323
324 if (l_asset_id_tbl.count = 0) then
325 exit;
326 end if;
327
328 -- Bug 13481113 : Using fa_deprn_periods open and close dates as they
329 -- should match mc values instead of sysdate
330 l_event_date :=
331 greatest(fa_cache_pkg.fazcdp_record.calendar_period_open_date,
332 least(nvl(fa_cache_pkg.fazcdp_record.calendar_period_close_date,
333 sysdate),
334 sysdate));
335
336 if (g_log_level_rec.statement_level) then
337 fa_debug_pkg.add(l_calling_fn, 'calling', 'xla event api',
338 p_log_level_rec => g_log_level_rec);
339 end if;
340
341 fa_xla_events_pvt.create_bulk_deprn_event
342 (p_asset_id_tbl => l_asset_id_tbl,
343 p_book_type_code => p_book_type_code,
344 p_period_counter => p_period_counter,
345 p_period_close_date => l_event_date,
346 p_deprn_run_id => l_deprn_run_id,
347 p_entity_type_code => 'DEPRECIATION',
348 x_event_id_tbl => l_event_id_tbl,
349 p_calling_fn => l_calling_fn,
350 p_log_level_rec => g_log_level_rec);
351
352 if (g_log_level_rec.statement_level) then
353 fa_debug_pkg.add(l_calling_fn, 'performing', 'bulk update - reporting1',
354 p_log_level_rec => g_log_level_rec);
355 end if;
356
357 FORALL l_count in 1..l_asset_id_tbl.count
358 UPDATE FA_MC_DEPRN_SUMMARY
359 SET event_id = l_event_id_tbl(l_count),
360 deprn_run_id = l_deprn_run_id
361 WHERE rowid = l_rowid_tbl(l_count);
362
363 FORALL l_count in 1..l_asset_id_tbl.count
364 UPDATE FA_MC_DEPRN_DETAIL
365 SET event_id = l_event_id_tbl(l_count),
366 deprn_run_id = l_deprn_run_id
367 WHERE asset_id = l_asset_id_tbl(l_count)
368 AND book_type_code = p_book_type_code
369 AND period_counter = p_period_counter;
370
371 if (g_log_level_rec.statement_level) then
372 fa_debug_pkg.add(l_calling_fn, 'performing', 'bulk update - reporting2',
373 p_log_level_rec => g_log_level_rec);
374 end if;
375
376 -- now process all matching mrc rows for summary
377 FORALL l_count in 1..l_asset_id_tbl.count
378 UPDATE FA_MC_DEPRN_SUMMARY
379 SET event_id = l_event_id_tbl(l_count),
380 deprn_run_id = l_deprn_run_id
381 WHERE set_of_books_id <> l_sob_tbl(l_sob_index)
382 AND asset_id = l_asset_id_tbl(l_count)
383 AND book_type_code = p_book_type_code
384 AND period_counter = p_period_counter;
385
386 if (g_log_level_rec.statement_level) then
387 fa_debug_pkg.add(l_calling_fn, 'done', 'mc bulk updates',
388 p_log_level_rec => g_log_level_rec);
389 end if;
390
391 FORALL l_count in 1..l_asset_id_tbl.count
392 INSERT into fa_deprn_events
393 (asset_id ,
394 book_type_code ,
395 period_counter ,
396 deprn_run_id ,
397 deprn_run_date ,
398 event_id ,
399 reversal_event_id
400 )
401 VALUES
402 (l_asset_id_tbl(l_count),
403 p_book_type_code,
404 p_period_counter,
405 l_deprn_run_id,
406 sysdate,
407 l_event_id_tbl(l_count),
408 null);
409
410 if (g_log_level_rec.statement_level) then
411 fa_debug_pkg.add(l_calling_fn, 'done', 'bulk insert',
412 p_log_level_rec => g_log_level_rec);
413 end if;
414
415 end loop;
416
417 commit;
418
419 CLOSE mc_deprn_events;
420
421 END LOOP; -- sob loop
422
423 -- Bug 6391045
424 -- Code hook for IAC
425 /* Bug 10417538
426 if (FA_IGI_EXT_PKG.IAC_Enabled) and
427 (p_close_period = 1) then
428 if not FA_IGI_EXT_PKG.Do_Depreciation(
429 p_book_type_code => p_book_type_code,
430 p_period_counter => p_period_counter,
431 p_calling_function => l_calling_fn ) then
432 raise error_found;
433 end if;
434 end if; -- (FA_IGI_EXT_PKG.IAC_Enabled)
435 */
436 x_return_status := 0;
437
438 EXCEPTION
439 WHEN error_found THEN
440 fa_srvr_msg.add_message(calling_fn => l_calling_fn,
441 p_log_level_rec => g_log_level_rec);
442 x_return_status := 2;
443
444 commit;
445
446 raise;
447
448 WHEN OTHERS THEN
449 if DEPRN_EVENTS%ISOPEN then
450 close DEPRN_EVENTS;
451 end if;
452
453 if MC_DEPRN_EVENTS%ISOPEN then
454 close MC_DEPRN_EVENTS;
455 end if;
456
457 fa_srvr_msg.add_sql_error(calling_fn => l_calling_fn,
458 p_log_level_rec => g_log_level_rec);
459 x_return_status := 2;
460
461 commit;
462
463 raise;
464
465 END process_deprn_events;
466
467 -- ER 14644811 : New procedure to create depreciation event
468 -- for single asset
469
470 PROCEDURE process_single_deprn_event
471 (p_book_type_code IN varchar2,
472 p_period_counter IN number,
473 p_asset_id IN NUMBER,
474 p_calling_fn IN VARCHAR2,
475 x_return_status OUT NOCOPY number,
476 p_log_level_rec IN FA_API_TYPES.log_level_rec_type default null) IS
477
478 l_event_id number;
479 l_event_date date;
480 l_deprn_run_id number;
481 l_calling_fn varchar2(60) := 'FA_DEPRN_EVENTS_PKG.process_single_deprn_event';
482
483 error_found exception;
484
485 --Secondary Changes
486 l_secondary_sob_id number;
487 l_secondary_event_id number;
488 l_secondary_deprn_run_id number;
489
490 BEGIN
491
492 if (p_log_level_rec.statement_level) then
493 fa_debug_pkg.add(l_calling_fn, 'at ', 'begin' ,p_log_level_rec => p_log_level_rec);
494 end if;
495
496 if not fa_cache_pkg.fazcbc(X_book => p_book_type_code,
497 p_log_level_rec => p_log_level_rec) then
498 raise error_found;
499 end if;
500
501 if not fa_cache_pkg.fazcdp(x_book_type_code => p_book_type_code,
502 x_period_counter => p_period_counter,
503 x_effective_date => null,
504 p_log_level_rec => p_log_level_rec) then
505 raise error_found;
506 end if;
507
508 select fa_deprn_summary_s.nextval
509 into l_deprn_run_id
510 from dual;
511
512 if (p_log_level_rec.statement_level) then
513 fa_debug_pkg.add(l_calling_fn, 'calling', 'xla event api',
514 p_log_level_rec => p_log_level_rec);
515 end if;
516
517 l_event_date :=
518 greatest(fa_cache_pkg.fazcdp_record.calendar_period_open_date,
519 least(nvl(fa_cache_pkg.fazcdp_record.calendar_period_close_date,
520 sysdate),
521 sysdate));
522
523 fa_xla_events_pvt.create_deprn_event
524 (p_asset_id => p_asset_id,
525 p_book_type_code => p_book_type_code,
526 p_period_counter => p_period_counter,
527 p_period_close_date => l_event_date,
528 p_deprn_run_id => l_deprn_run_id,
529 p_ledger_id => fa_cache_pkg.fazcbc_record.set_of_books_id,
530 x_event_id => l_event_id,
531 p_calling_fn => l_calling_fn,
532 p_log_level_rec => p_log_level_rec);
533
534 if (p_log_level_rec.statement_level) then
535 fa_debug_pkg.add(l_calling_fn, 'Updating', 'primary deprn',
536 p_log_level_rec => p_log_level_rec);
537 end if;
538
539 UPDATE FA_DEPRN_SUMMARY
540 SET event_id = l_event_id,
541 deprn_run_id = l_deprn_run_id
542 WHERE asset_id = p_asset_id
543 AND book_type_code = p_book_type_code
544 AND period_counter = p_period_counter;
545
546 UPDATE FA_DEPRN_DETAIL
547 SET event_id = l_event_id,
548 deprn_run_id = l_deprn_run_id
549 WHERE asset_id = p_asset_id
550 AND book_type_code = p_book_type_code
551 AND period_counter = p_period_counter;
552
553 if (p_log_level_rec.statement_level) then
554 fa_debug_pkg.add(l_calling_fn, 'Updating', 'reporting deprn',
555 p_log_level_rec => p_log_level_rec);
556 end if;
557
558 UPDATE FA_MC_DEPRN_SUMMARY
559 SET event_id = l_event_id,
560 deprn_run_id = l_deprn_run_id
561 WHERE asset_id = p_asset_id
562 AND book_type_code = p_book_type_code
563 AND period_counter = p_period_counter;
564
565 UPDATE FA_MC_DEPRN_DETAIL
566 SET event_id = l_event_id,
567 deprn_run_id = l_deprn_run_id
568 WHERE asset_id = p_asset_id
569 AND book_type_code = p_book_type_code
570 AND period_counter = p_period_counter;
571
572 if (p_log_level_rec.statement_level) then
573 fa_debug_pkg.add(l_calling_fn, 'Inserting', 'deprn_events',
574 p_log_level_rec => p_log_level_rec);
575 end if;
576
577 INSERT into fa_deprn_events
578 (asset_id ,
579 book_type_code ,
580 period_counter ,
581 deprn_run_id ,
582 deprn_run_date ,
583 event_id ,
584 reversal_event_id
585 )
586 VALUES
587 (p_asset_id,
588 p_book_type_code,
589 p_period_counter,
590 l_deprn_run_id,
591 sysdate,
592 l_event_id,
593 null);
594
595 --Secondary Changes
596 l_secondary_sob_id := FA_XLA_EVENTS_PVT.get_secondary_sob_id(p_book_type_code);
597 if(l_secondary_sob_id is not null) then
598
599 if (p_log_level_rec.statement_level) then
600 fa_debug_pkg.add(l_calling_fn, 'before', 'secondary event creation',
601 p_log_level_rec => p_log_level_rec);
602 end if;
603
604 select fa_deprn_summary_s.nextval
605 into l_secondary_deprn_run_id
606 from dual;
607
608 fa_xla_events_pvt.create_deprn_event
609 (p_asset_id => p_asset_id,
610 p_book_type_code => p_book_type_code,
611 p_period_counter => p_period_counter,
612 p_period_close_date => l_event_date,
613 p_deprn_run_id => l_secondary_deprn_run_id,
614 p_ledger_id => l_secondary_sob_id,
615 x_event_id => l_secondary_event_id,
616 p_calling_fn => l_calling_fn,
617 p_log_level_rec => p_log_level_rec);
618
619 if (p_log_level_rec.statement_level) then
620 fa_debug_pkg.add(l_calling_fn, 'Updating', 'secondary deprn',
621 p_log_level_rec => p_log_level_rec);
622 end if;
623
624 UPDATE FA_MC_DEPRN_SUMMARY
625 SET event_id = l_secondary_event_id,
626 deprn_run_id = l_secondary_deprn_run_id
627 WHERE asset_id = p_asset_id
628 AND book_type_code = p_book_type_code
629 AND period_counter = p_period_counter
630 and set_of_books_id = l_secondary_sob_id;
631
632 UPDATE FA_MC_DEPRN_DETAIL
633 SET event_id = l_secondary_event_id,
634 deprn_run_id = l_secondary_deprn_run_id
635 WHERE asset_id = p_asset_id
636 AND book_type_code = p_book_type_code
637 AND period_counter = p_period_counter
638 and set_of_books_id = l_secondary_sob_id;
639
640 end if;
641
642 x_return_status := 0;
643
644 EXCEPTION
645 WHEN error_found THEN
646 fa_srvr_msg.add_message(calling_fn => l_calling_fn,
647 p_log_level_rec => p_log_level_rec);
648 x_return_status := 2;
649 raise;
650
651 WHEN OTHERS THEN
652
653 fa_srvr_msg.add_sql_error(calling_fn => l_calling_fn,
654 p_log_level_rec => p_log_level_rec);
655 x_return_status := 2;
656 raise;
657
658 END process_single_deprn_event;
659
660 --------------------------------------------------------------------------------
661
662 END FA_DEPRN_EVENTS_PKG;