DBA Data[Home] [Help]

PACKAGE BODY: APPS.FA_BASIS_OVERRIDE_INIT_PKG

Source


1 PACKAGE BODY FA_BASIS_OVERRIDE_INIT_PKG as
2 /* $Header: FADBOIB.pls 120.19 2005/07/25 10:05:48 yyoon noship $ */
3 
4 
5 g_fy fa_deprn_periods.fiscal_year%TYPE;
6 g_p_num fa_deprn_periods.period_num%TYPE;
7 g_p_counter fa_deprn_periods.period_counter%TYPE;
8 g_book fa_deprn_periods.book_type_code%TYPE;
9 
10 FUNCTION facodda(book in varchar2,
11                 used_by_adjustment in number,
12                 asset_id in number,
13                 bonus_rule in varchar2,
14                 fyctr in number,
15                 perd_ctr in number,
16                 prod_rate_src_flag in number,
17                 deprn_projecting_flag in number,
18                 p_ytd_deprn         IN NUMBER,
19                 p_bonus_ytd_deprn   IN NUMBER,
20                 override_depr_amt out nocopy number,
21                 override_bonus_amt out nocopy number,
22                 deprn_override_flag out nocopy varchar2,
23                 return_code out nocopy number,
24                 p_mrc_sob_type_code IN VARCHAR2,
25 		p_log_level_rec        IN     FA_API_TYPES.log_level_rec_type default null) return number is
26 
27   h_used_by_adjustment_bool      boolean;
28   h_deprn_projecting_flag_bool   boolean;
29   h_prod_rate_src_flag_bool      boolean;
30 
31   l_calling_fn   varchar2(40) := 'fa_basis_override_init_pkg.facodda';
32   facodda_err    EXCEPTION;
33 
34 begin <<FACODDA>>
35 
36 --   fa_debug_pkg.initialize;
37 
38   /* This is just cover process to call the function FAODDA on FA_CDE_PKG */
39 
40 
41   if (p_log_level_rec.statement_level) then
42     fa_debug_pkg.add('facodda','Just Start the cover program','', p_log_level_rec);
43   end if;
44 
45   if used_by_adjustment = 1 then
46     h_used_by_adjustment_bool := TRUE;
47   else
48     h_used_by_adjustment_bool := FALSE;
49   end if;
50 
51   if deprn_projecting_flag = 1 then
52     h_deprn_projecting_flag_bool := TRUE;
53   else
54     h_deprn_projecting_flag_bool := FALSE;
55   end if;
56 
57   if prod_rate_src_flag = 1 then
58     h_prod_rate_src_flag_bool := TRUE;
59   else
60     h_prod_rate_src_flag_bool := FALSE;
61   end if;
62 
63   if (p_log_level_rec.statement_level) then
64     fa_debug_pkg.add('facodda','Just Call the main program','faodda', p_log_level_rec);
65     fa_debug_pkg.add('facodda','book',book, p_log_level_rec);
66     fa_debug_pkg.add('facodda','used_by_adjustment',used_by_adjustment, p_log_level_rec);
67     fa_debug_pkg.add('facodda','asset_id',asset_id, p_log_level_rec);
68     fa_debug_pkg.add('facodda','bonus_rule',bonus_rule, p_log_level_rec);
69     fa_debug_pkg.add('facodda','fyctr',fyctr, p_log_level_rec);
70     fa_debug_pkg.add('facodda','perd_ctr',perd_ctr, p_log_level_rec);
71     fa_debug_pkg.add('facodda','prod_rate_src_flag',prod_rate_src_flag, p_log_level_rec);
72     fa_debug_pkg.add('facodda','deprn_projecting_flag',deprn_projecting_flag, p_log_level_rec);
73     fa_debug_pkg.add('facodda','p_ytd_deprn', p_ytd_deprn, p_log_level_rec);
74     fa_debug_pkg.add('facodda','p_bonus_ytd_deprn', p_bonus_ytd_deprn, p_log_level_rec);
75     fa_debug_pkg.add('facodda','override_depr_amt',override_depr_amt, p_log_level_rec);
76     fa_debug_pkg.add('facodda','override_bonus_amt',override_bonus_amt, p_log_level_rec);
77     fa_debug_pkg.add('facodda','deprn_override_flag',deprn_override_flag, p_log_level_rec);
78     fa_debug_pkg.add('facodda','return_code',return_code, p_log_level_rec);
79     fa_debug_pkg.add('facodda','p_mrc_sob_type_code',p_mrc_sob_type_code, p_log_level_rec);
80   end if;
81 
82   if not FA_CDE_PKG.faodda(book => book,
83                            used_by_adjustment => h_used_by_adjustment_bool,
84                            asset_id => asset_id,
85                            bonus_rule => bonus_rule,
86                            fyctr => fyctr,
87                            perd_ctr => perd_ctr,
88                            prod_rate_src_flag => h_prod_rate_src_flag_bool,
89                            deprn_projecting_flag => h_deprn_projecting_flag_bool,
90                            p_ytd_deprn => p_ytd_deprn,
91                            p_bonus_ytd_deprn => p_bonus_ytd_deprn,
92                            override_depr_amt => override_depr_amt,
93                            override_bonus_amt => override_bonus_amt,
94                            deprn_override_flag => deprn_override_flag,
95                            return_code => return_code,
96                            p_mrc_sob_type_code => p_mrc_sob_type_code,
97 			   p_log_level_rec => p_log_level_rec)
98           then
99     raise facodda_err;
100   end if;
101 
102   if (p_log_level_rec.statement_level) then
103     fa_debug_pkg.add('facodda','deprn_projecting_flag',deprn_projecting_flag, p_log_level_rec);
104     fa_debug_pkg.add('facodda','override_depr_amt',override_depr_amt, p_log_level_rec);
105     fa_debug_pkg.add('facodda','override_bonus_amt',override_bonus_amt, p_log_level_rec);
106     fa_debug_pkg.add('facodda','deprn_override_flag',deprn_override_flag, p_log_level_rec);
107     fa_debug_pkg.add('facodda','return_code',return_code, p_log_level_rec);
108   end if;
109 
110   return 0;
111 
112 
113 exception
114   WHEN facodda_err THEN
115     fa_srvr_msg.add_message (calling_fn => l_calling_fn,
116               	 p_log_level_rec => p_log_level_rec);
117     return 1;
118 
119   when others then
120     fa_srvr_msg.add_message (calling_fn => l_calling_fn,
121               	 p_log_level_rec => p_log_level_rec);
122     return 1;
123 
124 end FACODDA;
125 
126 /* Function to call faxcdb */
127 FUNCTION faxccdb (event_type in varchar2,
128                  asset_id in number default 0,
129                  group_asset_id in number default 0,
130                  book_type_code in varchar2 default null,
131                  asset_type in varchar2 default null,
132                  depreciate_flag in varchar2 default null,
133                  method_code in varchar2 default null,
134                  life_in_months in number default 0,
135                  method_id in number default 0,
136                  method_type in varchar2 default null,
137                  calc_basis in varchar2 default null,
138                  adjustment_amount in number default 0,
139                  transaction_flag in varchar2 default null,
140                  cost in number default 0,
141                  salvage_value in number default 0,
142                  recoverable_cost in number default 0,
143                  adjusted_cost in number default 0,
144                  current_total_rsv in number default 0,
145                  current_rsv in number default 0,
146                  current_total_ytd in number default 0,
147                  current_ytd in number default 0,
148                  hyp_basis in number default 0,
149                  hyp_total_rsv in number default 0,
150                  hyp_rsv in number default 0,
151                  hyp_total_ytd in number default 0,
152                  hyp_ytd in number default 0,
153                  old_adjusted_cost in number default 0,
154                  old_raf in number default 0,
155                  old_formula_factor in number default 0,
156                  new_adjusted_cost out NOCOPY number,
157                  new_raf out NOCOPY number,
158                  new_formula_factor out NOCOPY number,
159                  -- new parameter for group depreciation
160                  p_period_counter in number default null,  -- period num
161                  p_fiscal_year in number default null,
162                  p_eofy_reserve in number default null,
163                  p_tracking_method in varchar2 default null,
164                  p_allocate_to_fully_rsv_flag in varchar2 default null,
165                  p_allocate_to_fully_ret_flag in varchar2 default null,
166                  p_depreciation_option in varchar2 default null,
167                  p_member_rollup_flag in varchar2 default null,
168                  p_eofy_recoverable_cost in number default null,
169                  p_eop_recoverable_cost in number default null,
170                  p_eofy_salvage_value in number default null,
171                  p_eop_salvage_value in number default null,
172                  p_used_by_adjustment in number default null,
173                  p_eofy_flag in varchar2  default null,
174                  -- new parameter for polish enhancement
175                  p_polish_rule in number default
176                     FA_STD_TYPES.FAD_DBR_POLISH_NONE,
177                  p_deprn_factor in number default null,
178                  p_alternate_deprn_factor in number default null,
179                  p_mrc_sob_type_code in varchar2 default 'N',
180 		 p_log_level_rec        IN     FA_API_TYPES.log_level_rec_type default null) return number is
181 
182   h_rule_in           fa_std_types.fa_deprn_rule_in_struct;
183   h_rule_out          fa_std_types.fa_deprn_rule_out_struct;
184 
185   -- Added for group depreciation
186   Cursor C_PERIOD_COUNTER (
187                            l_book_type_code  varchar2,
188                            l_fiscal_year     number,
189                            l_period_number   number)
190   is
191     select dp.period_counter
192     from   FA_DEPRN_PERIODS dp
193     where  dp.book_type_code = l_book_type_code
194     and    dp.fiscal_year = l_fiscal_year
195     and    dp.period_num = l_period_number;
196 
197   Cursor C_PERIOD_COUNTER_MRC (
198                            l_book_type_code  varchar2,
199                            l_fiscal_year     number,
200                            l_period_number   number)
201   is
202     select dp.period_counter
203     from   FA_DEPRN_PERIODS_MRC_V dp
204     where  dp.book_type_code = l_book_type_code
205     and    dp.fiscal_year = l_fiscal_year
206     and    dp.period_num = l_period_number;
207 
208   Cursor C_METHOD_CODE (
209                         l_asset_id        number,
210                         l_book_type_code  varchar2)
211   is
212     select bk.deprn_method_code,
213            bk.life_in_months
214     from   FA_BOOKS bk
215     where  bk.asset_id = l_asset_id
216     and    bk.book_type_code = l_book_type_code
217     and    bk.date_ineffective is null;
218 
219   Cursor C_METHOD_CODE_MRC (
220                         l_asset_id        number,
221                         l_book_type_code  varchar2)
222   is
223     select bk.deprn_method_code,
224            bk.life_in_months
225     from   FA_BOOKS bk
226     where  bk.asset_id = l_asset_id
227     and    bk.book_type_code = l_book_type_code
228     and    bk.date_ineffective is null;
229 
230   h_eofy_recoverable_cost  NUMBER;
231   h_eop_recoverable_cost   NUMBER;
232   h_eofy_salvage_value     NUMBER;
233   h_eop_salvage_value      NUMBER;
234   h_used_by_adjustment     VARCHAR2(15);
235   h_eofy_flag              VARCHAR2(1);
236 
237   l_chk_count              NUMBER;
238   l_calling_fn             varchar2(40) := 'fa_basis_override_init_pkg.faxccdb';
239   faxccdb_err              exception;
240 
241 BEGIN <<FAXCCDB>>
242 
243   -- fa_debug_pkg.initialize; -- removed to not clear the message stack.
244 
245   -- This is just cover process to call the function
246   -- of faxcdb on FA_CALC_DEPRN_BASIS1_PKG
247 
248    if (p_log_level_rec.statement_level) then
249       fa_debug_pkg.add('faxccdb','Just Start the cover program','', p_log_level_rec);
250    end if;
251 
252   -- Set default amount to out parameters
253   new_adjusted_cost := nvl(old_adjusted_cost,0);
254   new_raf := nvl(old_raf,1);
255   new_formula_factor := nvl(new_formula_factor,1);
256 
257   /* set h_rule_in paremters */
258 
259   h_rule_in.event_type := event_type;
260   h_rule_in.asset_id := asset_id;
261   if group_asset_id = 0 then
262     h_rule_in.group_asset_id := null;
263   else
264     h_rule_in.group_asset_id := group_asset_id;
265   end if;
266   h_rule_in.book_type_code := book_type_code;
267   h_rule_in.asset_type := asset_type;
268   h_rule_in.depreciate_flag := depreciate_flag;
269   h_rule_in.method_code := method_code;
270   h_rule_in.life_in_months := life_in_months;
271   h_rule_in.method_id := method_id;
272   h_rule_in.method_type := method_type;
273   h_rule_in.calc_basis := calc_basis;
274   h_rule_in.adjustment_amount := adjustment_amount;
275   h_rule_in.transaction_flag := transaction_flag;
276   h_rule_in.cost := cost;
277   h_rule_in.salvage_value := salvage_value;
278   h_rule_in.recoverable_cost := recoverable_cost;
279   h_rule_in.adjusted_cost := adjusted_cost;
280   h_rule_in.current_total_rsv := current_total_rsv;
281   h_rule_in.current_rsv := current_rsv;
282   h_rule_in.current_total_ytd := current_total_ytd;
283   h_rule_in.current_ytd := current_ytd;
284   h_rule_in.hyp_basis := hyp_basis;
285   h_rule_in.hyp_total_rsv := hyp_total_rsv;
286   h_rule_in.hyp_rsv := hyp_rsv;
287   h_rule_in.hyp_total_ytd := hyp_total_ytd;
288   h_rule_in.hyp_ytd := hyp_ytd;
289   h_rule_in.old_adjusted_cost := old_adjusted_cost;
290   h_rule_in.old_raf := old_raf;
291   h_rule_in.old_formula_factor := old_formula_factor;
292 
293   -- Added for Group depreciation
294   h_rule_in.fiscal_year := p_fiscal_year;
295   h_rule_in.period_num  := p_period_counter;
296 
297   -- Added for Polish Tax depreciation
298   h_rule_in.polish_rule := p_polish_rule;
299   h_rule_in.deprn_factor := p_deprn_factor;
300   h_rule_in.alternate_deprn_factor := p_alternate_deprn_factor;
301 
302   if event_type = 'AFTER_DEPRN' then
303     if p_mrc_sob_type_code <>'R' then
304       if g_book = book_type_code and
305          nvl(g_fy, -99) = p_fiscal_year and
306          nvl(g_p_num, -99) = p_period_counter then
307          h_rule_in.period_counter:= g_p_counter;
308       else
309          OPEN C_PERIOD_COUNTER(book_type_code,p_fiscal_year,p_period_counter);
310          FETCH C_PERIOD_COUNTER into h_rule_in.period_counter;
311          CLOSE C_PERIOD_COUNTER;
312 
313          g_book:= book_type_code;
314          g_fy:= p_fiscal_year;
315          g_p_num:= p_period_counter;
316          g_p_counter:= h_rule_in.period_counter;
317       end if;
318     else
319       if g_book = book_type_code and
320          nvl(g_fy, -99) = p_fiscal_year and
321          nvl(g_p_num, -99) = p_period_counter then
322          h_rule_in.period_counter:= g_p_counter;
323       else
324          OPEN C_PERIOD_COUNTER_MRC(book_type_code,p_fiscal_year,p_period_counter);
325          FETCH C_PERIOD_COUNTER_MRC into h_rule_in.period_counter;
326          CLOSE C_PERIOD_COUNTER_MRC;
327 
328          g_book:= book_type_code;
329          g_fy:= p_fiscal_year;
330          g_p_num:= p_period_counter;
331          g_p_counter:= h_rule_in.period_counter;
332       end if;
333     end if;
334   else
335     h_rule_in.period_counter := p_period_counter;
336   end if;
337 
338   h_rule_in.eofy_reserve := p_eofy_reserve;
339   h_rule_in.tracking_method := p_tracking_method;
340   h_rule_in.allocate_to_fully_rsv_flag := p_allocate_to_fully_rsv_flag;
341   h_rule_in.allocate_to_fully_ret_flag := p_allocate_to_fully_ret_flag;
342   h_rule_in.depreciation_option := p_depreciation_option;
343   h_rule_in.member_rollup_flag := p_member_rollup_flag;
344   h_rule_in.eofy_recoverable_cost := p_eofy_recoverable_cost;
345   h_rule_in.eop_recoverable_cost := p_eop_recoverable_cost;
346   h_rule_in.eofy_salvage_value := p_eofy_salvage_value;
347   h_rule_in.eop_salvage_value := p_eop_salvage_value;
348   h_rule_in.used_by_adjustment := p_used_by_adjustment;
349   h_rule_in.eofy_flag := p_eofy_flag;
350   h_rule_in.mrc_sob_type_code := nvl(p_mrc_sob_type_code,'N');
351 
352   -- Check method_code
353 
354   if (p_log_level_rec.statement_level) then
355     fa_debug_pkg.add('faxccdb','h_rule_in.method_code(1)',h_rule_in.method_code, p_log_level_rec);
356     fa_debug_pkg.add('faxccdb','h_rule_in.life_in_months(1)',h_rule_in.life_in_months, p_log_level_rec);
357   end if;
358 
359 --  select count(1)
360 --  into   l_chk_count
361 --  from   FA_METHODS MT
362 --  where  mt.method_code = h_rule_in.method_code
363 --  and    nvl(mt.life_in_months,0) = nvl(h_rule_in.life_in_months,0);
364 
365    -- When l_chk_count is 0, get method_code and life_in_months
366 --  if l_chk_count =0 then
367 --    if p_mrc_sob_type_code <>'R' then
368 --      OPEN  C_METHOD_CODE (asset_id, book_type_code);
369 --      FETCH C_METHOD_CODE into h_rule_in.method_code,
370 --                               h_rule_in.life_in_months;
371 --      CLOSE C_METHOD_CODE;
372 --    else --MRC
373 --      OPEN  C_METHOD_CODE_MRC (asset_id, book_type_code);
374 --      FETCH C_METHOD_CODE_MRC into h_rule_in.method_code,
375 --                                   h_rule_in.life_in_months;
376 --      CLOSE C_METHOD_CODE_MRC;
377 --    end if;
378 --  end if;
379 
380   if (p_log_level_rec.statement_level) then
381     fa_debug_pkg.add('faxccdb','h_rule_in.method_code(2)',h_rule_in.method_code, p_log_level_rec);
382     fa_debug_pkg.add('faxccdb','h_rule_in.life_in_months(2)',h_rule_in.life_in_months, p_log_level_rec);
383     fa_debug_pkg.add('faxccdb','method_type',method_type, p_log_level_rec);
384     fa_debug_pkg.add('faxccdb','calc_basis',calc_basis, p_log_level_rec);
385   end if;
386 
387   -- Get rate_source_rule and deprn_basis_rule
388   -- to avoid that method_type and calc_basis are set null
389   if method_type is null or calc_basis is null then
390 
391     if not fa_cache_pkg.fazccmt
392           (X_method                => h_rule_in.method_code,
393            X_life                  => h_rule_in.life_in_months,
394 	   p_log_level_rec => p_log_level_rec) then
395 
396       raise faxccdb_err;
397 
398     end if;
399 
400      h_rule_in.method_id   := fa_cache_pkg.fazccmt_record.method_id;
401      h_rule_in.method_type := fa_cache_pkg.fazccmt_record.rate_source_rule;
402      h_rule_in.calc_basis  := fa_cache_pkg.fazccmt_record.deprn_basis_rule;
403 
404      if (fa_cache_pkg.fazccmt_record.deprn_basis_rule_id is not null) then
405         h_rule_in.polish_rule := fa_cache_pkg.fazcdbr_record.polish_rule;
406      end if;
407 
408      -- We don't want to use this logic for Polish code.
409      if (h_rule_in.polish_rule is not null) and
410         (h_rule_in.polish_rule <> FA_STD_TYPES.FAD_DBR_POLISH_NONE) then
411         return 0;
412      end if;
413   end if;
414 
415   --
416   -- eofy and eop amounts are necessary only if deprn basis rules are following
417   --   need eop amounts: 'PERIOD END AVERAGE', 'BEGINNING PERIOD'
418   --   need eofy amounts: 'YEAR TO DATE AVERAGE', 'YEAR END BALANCE WITH HALF YEAR RULE'
419   --
420   if (fa_cache_pkg.fazcdbr_record.rule_name in ('PERIOD END AVERAGE', 'BEGINNING PERIOD',
421                                                 'YEAR TO DATE AVERAGE',
422                                                 'YEAR END BALANCE WITH HALF YEAR RULE'
423 )) then
424      ---------------------------------------------
425      -- Get end of fiscal year
426      -- and end of period recoverable cost
427      -- and salvage value
428      ---------------------------------------------
429      -- Get eofy recoverable cost and salvage value
430      if    p_eofy_recoverable_cost is null
431         or p_eofy_salvage_value is null
432         or p_eop_recoverable_cost is null
433         or p_eop_salvage_value is null
434      then
435 
436        if (not FA_CALC_DEPRN_BASIS1_PKG.GET_EOFY_EOP
437                 (
438                  p_asset_id              => h_rule_in.asset_id,
439                  p_book_type_code        => h_rule_in.book_type_code,
440                  p_fiscal_year           => h_rule_in.fiscal_year,
441                  p_period_num            => h_rule_in.period_num,
442                  p_asset_type            => h_rule_in.asset_type,
443                  p_recoverable_cost      => h_rule_in.recoverable_cost,
444                  p_salvage_value         => h_rule_in.salvage_value,
445                  p_period_counter        => p_period_counter,
446                  p_mrc_sob_type_code     => h_rule_in.mrc_sob_type_code,
447                  x_eofy_recoverable_cost => h_rule_in.eofy_recoverable_cost,
448                  x_eofy_salvage_value    => h_rule_in.eofy_salvage_value,
449                  x_eop_recoverable_cost  => h_rule_in.eop_recoverable_cost,
450                  x_eop_salvage_value     => h_rule_in.eop_salvage_value
451 
452                 ,p_log_level_rec => p_log_level_rec))
453        then
454          h_rule_in.eofy_recoverable_cost := nvl(p_eofy_recoverable_cost,0);
455          h_rule_in.eofy_salvage_value    := nvl(p_eofy_salvage_value,0);
456          h_rule_in.eop_recoverable_cost  := nvl(p_eop_recoverable_cost,0);
457          h_rule_in.eop_salvage_value     := nvl(p_eop_salvage_value,0);
458        end if;
459      end if; -- End of getting eofy and eop recoverable cost and salvage value
460 
461   else
462       h_rule_in.eofy_recoverable_cost := 0;
463       h_rule_in.eofy_salvage_value    := 0;
464       h_rule_in.eop_recoverable_cost  := 0;
465       h_rule_in.eop_salvage_value     := 0;
466   end if; -- (fa_cache_pkg.fazcdbr_record.rule_name in (....
467 
468   --------------------------------------------
469   -- Set 0 to the end of fiscal year
470   -- and end of period recoverable cost
471   -- and salvage value if they returned 0
472   --------------------------------------------
473   h_rule_in.eofy_recoverable_cost := nvl(h_rule_in.eofy_recoverable_cost,0);
474   h_rule_in.eofy_salvage_value    := nvl(h_rule_in.eofy_salvage_value,0);
475   h_rule_in.eop_recoverable_cost  := nvl(h_rule_in.eop_recoverable_cost,0);
476   h_rule_in.eop_salvage_value     := nvl(h_rule_in.eop_salvage_value,0);
477 
478   -- Initialize output parameters
479 
480   h_rule_out.new_adjusted_cost := 0;
481   h_rule_out.new_raf := 1;
482   h_rule_out.new_formula_factor := 1;
483 
484   ------------------------------------------------------
485   -- Performance Improvement:
486   -- If method_type is FLAT, set null to life_in_months
487   -- to reduce the loop on fazccmt which faxcdb calls
488   ------------------------------------------------------
489   if h_rule_in.method_type = 'FLAT' then
490     h_rule_in.life_in_months := null;
491   end if;
492 
493   --------------------------------------------------
494   -- Call Depreciable Basis Formula PL/SQL function
495   --------------------------------------------------
496 
497   if not FA_CALC_DEPRN_BASIS1_PKG.faxcdb
498                      (
499                       rule_in     => h_rule_in,
500                       rule_out    => h_rule_out,
501 		      p_log_level_rec => p_log_level_rec)
502             then
503 
504               raise faxccdb_err;
505 
506             END IF;
507 
508              /* set rule_out parameters */
509             new_adjusted_cost := h_rule_out.new_adjusted_cost;
510             new_raf := h_rule_out.new_raf;
511             new_formula_factor := h_rule_out.new_formula_factor;
512 
513             return 0;
514 
515 exception
516   when faxccdb_err then
517     fa_srvr_msg.add_sql_error (calling_fn => l_calling_fn
518         ,p_log_level_rec => p_log_level_rec);
519     return 1;
520 
521   when others then
522     fa_srvr_msg.add_sql_error (calling_fn => l_calling_fn
523         ,p_log_level_rec => p_log_level_rec);
524     return 1;
525 
526 end faxccdb;
527 
528 
529 FUNCTION faoddat(deprn_override_trigger in number,
530 		 p_log_level_rec        IN     FA_API_TYPES.log_level_rec_type default null) return number is
531              h_deprn_override_trigger  boolean;
532 
533              l_calling_fn  varchar2(40) := 'fa_basis_override_init_pkg.faoddat';
534 
535 begin <<FAODDAT>>
536 
537    -- fa_debug_pkg.initialize; -- removed to not clear the message stack.
538 
539    if deprn_override_trigger = 1 then
540       h_deprn_override_trigger := TRUE;
541    else
542       h_deprn_override_trigger := FALSE;
543    end if;
544 
545    fa_std_types.deprn_override_trigger_enabled:= h_deprn_override_trigger;
546 
547    if (p_log_level_rec.statement_level) then
548       fa_debug_pkg.add('faoddat','faoddat: deprn_override_trigger_enabled', fa_std_types.deprn_override_trigger_enabled, p_log_level_rec);
549    end if;
550 
551    return 0;
552 
553 exception
554   when others then
555     fa_srvr_msg.add_sql_error (calling_fn => l_calling_fn
556         ,p_log_level_rec => p_log_level_rec);
557     return 1;
558 
559 end faoddat;
560 END FA_BASIS_OVERRIDE_INIT_PKG;
561