[Home] [Help]
PACKAGE BODY: APPS.PAY_SE_EFT
Source
1 PACKAGE BODY PAY_SE_EFT as
2 /* $Header: pyseeftp.pkb 120.0.12000000.1 2007/01/18 01:19:51 appldev noship $ */
3 l_package CONSTANT varchar2(33) := 'PAY_SE_PAYFILE.';
4
5 -- Global Variables
6 -----------------------------------------------------------------------------
7 -- GET_PARAMETER used in SQL to decode legislative parameters
8 -----------------------------------------------------------------------------
9 FUNCTION get_parameter(p_payroll_action_id NUMBER,
10 p_token_name VARCHAR2) RETURN VARCHAR2 AS
11
12 CURSOR csr_parameter_info(p_pact_id IN NUMBER) IS
13 SELECT legislative_parameters
14 FROM pay_payroll_actions
15 WHERE payroll_action_id = p_pact_id;
16
17 l_token_value VARCHAR2(50);
18 l_parameter pay_payroll_actions.legislative_parameters%TYPE := NULL;
19 l_delimiter varchar2(1);
20 l_start_pos NUMBER;
21 --
22
23 BEGIN
24 --
25 l_delimiter :=' ';
26 hr_utility.set_location('p_token_name = ' || p_token_name,20);
27 OPEN csr_parameter_info(p_payroll_action_id);
28 FETCH csr_parameter_info INTO l_parameter;
29 CLOSE csr_parameter_info;
30 l_start_pos := instr(' '||l_parameter,l_delimiter||p_token_name||'=');
31 IF l_start_pos = 0 THEN
32 l_delimiter := '|';
33 l_start_pos := instr(' '||l_parameter,l_delimiter||p_token_name||'=');
34 end if;
35 IF l_start_pos <> 0 THEN
36 l_start_pos := l_start_pos + length(p_token_name||'=');
37 l_token_value := substr(l_parameter,
38 l_start_pos,
39 instr(l_parameter||' ',
40 l_delimiter,l_start_pos)
41 - l_start_pos);
42 end if;
43
44 --
45 l_token_value := trim(l_token_value);
46 --
47 hr_utility.set_location('l_token_value = ' || l_token_value,20);
48 hr_utility.set_location('Leaving ' || 'get_parameters',30);
49
50 RETURN l_token_value;
51
52 END get_parameter;
53 end PAY_SE_EFT;