[Home] [Help]
PACKAGE BODY: APPS.GROSSUP_UPD
Source
1 PACKAGE BODY grossup_upd as
2 /* $Header: pyusntgu.pkb 115.1 2001/01/24 18:34:36 pkm ship $ */
3
4 PROCEDURE setup_grossup_bal(p_baltype_id number, p_baldim_id number)
5 IS
6
7 l_defbal_id number;
8
9 BEGIN
10 --
11 BEGIN
12 select defined_balance_id
13 into l_defbal_id
14 from pay_defined_balances
15 where balance_type_id = p_baltype_id
16 and balance_dimension_id = p_baldim_id
17 and legislation_code = 'US';
18 --
19 update pay_defined_balances
20 set grossup_allowed_flag = 'Y'
21 where defined_balance_id = l_defbal_id;
22
23 hr_utility.trace('Updated defined balance id : '||l_defbal_id);
24 --
25 EXCEPTION
26 when no_data_found then
27 --
28 insert into pay_defined_balances
29 (defined_balance_id,
30 balance_type_id,
31 balance_dimension_id,
32 legislation_code,
33 force_latest_balance_flag,
34 grossup_allowed_flag
35 )
36 values (pay_defined_balances_s.nextval,
37 p_baltype_id,
38 p_baldim_id,
39 'US',
40 'N',
41 'Y');
42 hr_utility.trace('Inserted balance_type_id : '||p_baltype_id);
43 hr_utility.trace('Inserted balance_dim_id : '||p_baldim_id);
44
45 END;
46 --
47 END setup_grossup_bal;
48
49
50 PROCEDURE delete_late_bal(p_start_latest_bal_id number,
51 p_end_latest_bal_id number,
52 p_dim_id number)
53 IS
54
55 CURSOR get_latest_bal IS
56 SELECT latest_balance_id
57 FROM pay_assignment_latest_balances alb,
58 pay_defined_balances pdb
59 WHERE alb.latest_balance_id BETWEEN p_start_latest_bal_id
60 AND p_end_latest_bal_id
61 AND alb.defined_balance_id = pdb.defined_balance_id
62 AND pdb.balance_dimension_id = p_dim_id;
63
64 l_count NUMBER := 0;
65
66 BEGIN
67
68 FOR latebal_rec in get_latest_bal LOOP
69
70 l_count := l_count + 1;
71
72 delete from pay_balance_context_values
73 where latest_balance_id = latebal_rec.latest_balance_id;
74
75 --hr_utility.trace('Deleted context value '||latebal_rec.latest_balance_id);
76
77 --
78 delete from pay_assignment_latest_balances
79 where latest_balance_id = latebal_rec.latest_balance_id;
80
81 --hr_utility.trace('Deleted asg late bal '||latebal_rec.latest_balance_id);
82
83 if l_count = 100 then
84 l_count := 0;
85 commit;
86 end if;
87
88
89 END LOOP;
90
91 END delete_late_bal;
92
93 END grossup_upd;