[Home] [Help]
PACKAGE BODY: APPS.PER_ES_ADDRESS
Source
1 PACKAGE body per_es_address AS
2 /* $Header: peespadp.pkb 120.1 2006/09/14 16:20:12 mgettins noship $ */
3 --
4 PROCEDURE check_es_address (p_postal_code IN VARCHAR2
5 ,p_region_2 IN VARCHAR2) IS
6 --
7 l_province_code varchar2(2);
8 --
9 BEGIN
10 --
11 -- Added for GSI Bug 5472781
12 --
13 IF hr_utility.chk_product_install('Oracle Human Resources', 'ES') THEN
14 --
15 --
16 l_province_code := substr(p_postal_code,1,2);
17
18 IF l_province_code <> p_region_2 THEN
19 hr_utility.set_message(800,'HR_ES_INVALID_VALUE');
20 hr_utility.set_message_token(800,'FIELD',hr_general.decode_lookup('ES_FORM_LABELS','POSTAL_CODE'));
21 hr_utility.raise_error;
22 END IF;
23 END IF;
24 --
25 END check_es_address;
26 --
27 PROCEDURE create_es_address (p_style IN VARCHAR2
28 ,p_postal_code IN VARCHAR2
29 ,p_region_2 IN VARCHAR2) IS
30 BEGIN
31 --
32 -- Added for GSI Bug 5472781
33 --
34 IF hr_utility.chk_product_install('Oracle Human Resources', 'ES') THEN
35 --
36 --
37 IF p_style = 'ES' THEN
38 IF p_postal_code IS NOT NULL THEN
39 per_es_address.check_es_address(p_postal_code => p_postal_code
40 ,p_region_2 => p_region_2);
41 END IF;
42 END IF;
43 END IF;
44 --
45 END create_es_address;
46 --
47 PROCEDURE update_es_address (p_address_id IN NUMBER
48 ,p_postal_code IN VARCHAR2
49 ,p_region_2 IN VARCHAR2) IS
50 --
51 CURSOR csr_get_address_info(c_address_id number) is
52 SELECT style, postal_code, region_2
53 FROM per_addresses
54 WHERE address_id=c_address_id;
55 --
56 l_rec csr_get_address_info%ROWTYPE;
57 l_postal_code per_addresses.postal_code%TYPE;
58 l_region_2 per_addresses.region_2%TYPE;
59
60
61 BEGIN
62 --
63 -- Added for GSI Bug 5472781
64 --
65 IF hr_utility.chk_product_install('Oracle Human Resources', 'ES') THEN
66 --
67 --
68 IF p_postal_code <> hr_api.g_varchar2
69 OR p_region_2 <> hr_api.g_varchar2 THEN
70 --
71 OPEN csr_get_address_info(p_address_id);
72 FETCH csr_get_address_info INTO l_rec;
73 CLOSE csr_get_address_info;
74 --
75 IF l_rec.style = 'ES' THEN
76 --
77 l_postal_code := p_postal_code;
78 l_region_2 := p_region_2;
79 --
80 IF p_postal_code = hr_api.g_varchar2 THEN
81 l_postal_code := l_rec.postal_code;
82 ELSIF p_region_2 = hr_api.g_varchar2 THEN
83 l_region_2 := l_rec.region_2;
84 END IF;
85 --
86 per_es_address.check_es_address(p_postal_code => l_postal_code
87 ,p_region_2 => l_region_2);
88 END IF;
89
90 END IF;
91 --
92 END IF;
93 END update_es_address;
94 --
95 PROCEDURE update_es_address_style(p_address_id IN NUMBER
96 ,p_postal_code IN VARCHAR2
97 ,p_region_2 IN VARCHAR2
98 ,p_style IN VARCHAR2) IS
99 --
100 CURSOR csr_get_address_info(c_address_id number) is
101 SELECT postal_code, region_2
102 FROM per_addresses
103 WHERE address_id=c_address_id;
104 --
105 l_rec csr_get_address_info%ROWTYPE;
106 l_postal_code per_addresses.postal_code%TYPE;
107 l_region_2 per_addresses.region_2%TYPE;
108 --
109 BEGIN
110 --
111 -- Added for GSI Bug 5472781
112 --
113 IF hr_utility.chk_product_install('Oracle Human Resources', 'ES') THEN
114 --
115 --
116 IF p_postal_code IS NOT NULL THEN
117 IF p_style = 'ES' THEN
118 --
119 IF p_postal_code <> hr_api.g_varchar2
120 OR p_region_2 <> hr_api.g_varchar2 THEN
121 OPEN csr_get_address_info(p_address_id);
122 FETCH csr_get_address_info INTO l_rec;
123 CLOSE csr_get_address_info;
124 --
125 l_postal_code := p_postal_code;
126 l_region_2 := p_region_2;
127 --
128 IF p_postal_code = hr_api.g_varchar2 THEN
129 l_postal_code := l_rec.postal_code;
130 ELSIF p_region_2 = hr_api.g_varchar2 THEN
131 l_region_2 := l_rec.region_2;
132 END IF;
133 --
134 per_es_address.check_es_address(p_postal_code => l_postal_code
135 ,p_region_2 => l_region_2);
136 END IF;
137 END IF;
138
139 END IF;
140 --
141 END IF;
142 END update_es_address_style;
143 --
144 END per_es_address;