DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_GB_P60_PROCESS

Source


1 PACKAGE BODY hr_gb_p60_process AS
2 /*  $Header: pygbp60leg.pkb 120.2 2011/12/21 05:29:28 achandwa noship $ */
3 
4 
5 
6 	procedure update_leg_process_status(errbuf                 out nocopy VARCHAR2,
7                                        retcode             out nocopy NUMBER,
8                                        p_payroll_action_id in  NUMBER,
9                                        p_new_status        in  VARCHAR2)
10 			is
11 				l_param_string VARCHAR2(2000);
12 				l_param_string_before_val VARCHAR2(2000);
13 				l_param_string_after_val VARCHAR2(2000);
14 
15 		begin
16 			retcode := 0;
17 			select legislative_parameters
18 			into   l_param_string
19 			from   pay_payroll_actions
20 			where  payroll_action_id = p_payroll_action_id;
21 
22 			if instr(l_param_string,'Status=') = 0
23 			then
24 
25 				update pay_payroll_actions
26 				set  legislative_parameters =l_param_string ||  ' '||' Status='||p_new_status
27 				where payroll_action_id = p_payroll_action_id; --8875;
28 			else
29 
30 				l_param_string_before_val := substr(l_param_string,1,instr(l_param_string, ' Status=')-2) ;
31 				l_param_string_after_val  := substr(l_param_string,instr(l_param_string, 'Status=') + length('Status=')+1) ;
32 
33 				update pay_payroll_actions
34 				set  legislative_parameters = l_param_string_before_val ||
35 				' Status=' || p_new_status || l_param_string_after_val
36 				where payroll_action_id = p_payroll_action_id; --8875;
37 			end if;
38 
39 
40    exception
41 
42    when OTHERS then
43         retcode := 1;
44         hr_utility.set_message(800, 'HR_78077_P11D_STATUS_CHG_ERR');
45         hr_utility.set_message_token(800, 'ERRORMSG', sqlerrm);
46         errbuf := hr_utility.get_message;
47         hr_utility.raise_error;
48 
49    end update_leg_process_status;
50 
51 
52 END hr_gb_p60_process;