1 PACKAGE BODY pay_balance_feed_data_pump AS
2 /* $Header: pypbfdpm.pkb 115.0 2003/03/27 13:03:52 scchakra noship $ */
3 --
4 ---------------------------- get_balance_feed_id ------------------------------
5 --
6 -- Returns a balance_feed_id and requires a user_key.
7 --
8 function get_balance_feed_id
9 (
10 p_balance_feed_user_key in varchar2
11 ) return number is
12 l_balance_feed_id number;
13 begin
14 l_balance_feed_id := pay_element_data_pump.user_key_to_id
15 (p_balance_feed_user_key);
16 return(l_balance_feed_id);
17 exception
18 when others then
19 hr_data_pump.fail('get_balance_feed_id', sqlerrm, p_balance_feed_user_key);
20 raise;
21 end get_balance_feed_id;
22 --
23 ---------------------------- get_balance_type_id ------------------------------
24 --
25 -- Returns a balance_type_id.
26 --
27 Function get_balance_type_id
28 (p_balance_name in varchar2
29 ,p_business_group_id in number
30 ,p_language_code in varchar2
31 )
32 return number is
33 --
34 l_balance_type_id number;
35 --
36 Begin
37 --
38 select bt.balance_type_id
39 into l_balance_type_id
40 from pay_balance_types bt, pay_balance_types_tl bttl
41 where bt.balance_type_id = bttl.balance_type_id
42 and bttl.language = p_language_code
43 and bttl.balance_name = p_balance_name
44 and (nvl(bt.business_group_id,-1) = p_business_group_id
45 or nvl(bt.legislation_code,' ') =
46 hr_api.return_legislation_code(p_business_group_id)
47 or bt.business_group_id is null
48 and bt.legislation_code is null);
49 --
50 return(l_balance_type_id);
51 --
52 Exception
53 --
54 when others then
55 hr_data_pump.fail('get_balance_type_id'
56 ,sqlerrm
57 ,p_balance_name
58 ,p_business_group_id);
59 raise;
60 --
61 End get_balance_type_id;
62 --
63 ---------------------------- get_balance_feed_ovn -----------------------------
64 --
65 -- Returns the object version number of the balance feed and requires a user
66 -- user key.
67 --
68 Function get_balance_feed_ovn
69 (p_balance_feed_user_key in varchar2
70 ,p_effective_date in date
71 )
72 return number is
73 --
74 l_balance_feed_ovn number;
75 --
76 Begin
77 select pbf.object_version_number
78 into l_balance_feed_ovn
79 from pay_balance_feeds_f pbf,
80 hr_pump_batch_line_user_keys key
81 where key.user_key_value = p_balance_feed_user_key
82 and pbf.balance_feed_id = key.unique_key_id
83 and p_effective_date between pbf.effective_start_date
84 and pbf.effective_end_date;
85
86 return(l_balance_feed_ovn);
87 exception
88 when others then
89 hr_data_pump.fail('get_balance_feed_ovn', sqlerrm, p_balance_feed_user_key,
90 p_effective_date);
91 raise;
92 end get_balance_feed_ovn;
93 --
94 END pay_balance_feed_data_pump;