DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_RO_PERSON_ADDRESS_API

Source


1 Package body  hr_ro_person_address_api as
2 /* $Header: perroaddapi.pkb 120.0.12020000.1 2013/03/21 17:12:50 ssanjays noship $ */
3 
4 	g_package  varchar2(33) := 'hr_ro_person_address_api.';
5 
6 
7 	PROCEDURE create_ro_person_address
8 	  (
9 	   p_validate                   	in     boolean  default false
10 	  ,p_effective_date            	in     date
11 	  ,p_person_id                  	in     number
12 	  ,p_primary_flag               	in     varchar2
13 	  ,p_date_from                  	in     date
14 	  ,p_date_to                    	in     date     default null
15 	  ,p_address_type               	in     varchar2 default null
16 	  ,p_comments                   	in     long default null
17 	  ,p_county                	in     varchar2 default null
18 	  ,p_locality                	in     varchar2 default null
19 	  ,p_street               		in     varchar2
20 	  ,p_street_number              	in     varchar2 default null
21 	  ,p_building                  	in     varchar2
22 	  ,p_entrance                   	in     varchar2
23 	  ,p_floor                   	in     varchar2
24 	  ,p_apartment_number	in     varchar2
25 	  ,p_postal_code                	in     varchar2 default null
26 	  ,p_country                  	in     varchar2
27 	  ,p_phone                     	in     varchar2 default null
28 	  ,p_mobile                    	in     varchar2
29 	  ,p_fax                   		in     varchar2 default null
30 	  ,p_email			in     varchar2
31 	  ,p_addr_attribute_category   in     varchar2 default null
32 	  ,p_addr_attribute1            	in     varchar2 default null
33 	  ,p_addr_attribute2            	in     varchar2 default null
34 	  ,p_addr_attribute3            	in     varchar2 default null
35 	  ,p_addr_attribute4            	in     varchar2 default null
36 	  ,p_addr_attribute5            	in     varchar2 default null
37 	  ,p_addr_attribute6            	in     varchar2 default null
38 	  ,p_addr_attribute7            	in     varchar2 default null
39 	  ,p_addr_attribute8            	in     varchar2 default null
40 	  ,p_addr_attribute9            	in     varchar2 default null
41 	  ,p_addr_attribute10          	in     varchar2 default null
42 	  ,p_addr_attribute11          	in     varchar2 default null
43 	  ,p_addr_attribute12          	in     varchar2 default null
44 	  ,p_addr_attribute13          	in     varchar2 default null
45 	  ,p_addr_attribute14          	in     varchar2 default null
46 	  ,p_addr_attribute15          	in     varchar2 default null
47 	  ,p_addr_attribute16          	in     varchar2 default null
48 	  ,p_addr_attribute17           	in     varchar2 default null
49 	  ,p_addr_attribute18           	in     varchar2 default null
50 	  ,p_addr_attribute19           	in     varchar2 default null
51 	  ,p_addr_attribute20           	in     varchar2 default null
52 	  ,p_party_id                   	in     number   default null
53 	  ,p_address_id                 	out nocopy number
54 	  ,p_object_version_number	out nocopy number
55 	 ) AS
56 
57 	  l_proc                varchar2(72) ;
58 
59 	 BEGIN
60 	     l_proc := g_package||'create_ro_person_address';
61 	     hr_utility.set_location('Entering:'|| l_proc, 10);
62 	     --
63 	     -- Create Person Address details.
64 	     --
65 
66 	     hr_person_address_api.create_person_address
67 	              (	p_validate                      	=>	  p_validate
68 	              	,p_effective_date               	=>	  p_effective_date
69 	              	,p_person_id                    	=>	  p_person_id
70 	              	,p_primary_flag                  	=>	  p_primary_flag
71 	              	,p_style	        		=>    	  'RO'
72 	              	,p_date_from                     	=>	  p_date_from
73 	              	,p_date_to                      	=>	  p_date_to
74 	              	,p_address_type                  	=>	  p_address_type
75 	              	,p_comments                      	=>	  p_comments
76 	              	,p_address_line1                 	=>	  p_county
77 	              	,p_address_line3                 	=>	  p_street
78 	              	,p_address_line2                 	=>	  p_locality
79 	              	,p_region_1                      	=>	  p_street_number
80 	              	,p_region_3                      	=>	  p_building
81 		,p_add_information13            =>	  p_entrance
82 		,p_add_information14            =>	  p_floor
83 		,p_add_information16            =>	  p_apartment_number
84 	              	,p_postal_code                   	=>	  p_postal_code
85 	              	,p_country                       	=>	  p_country
86 		,p_telephone_number_1	=>    	  p_phone
87 		,p_telephone_number_2	=>    	  p_mobile
88 		,p_telephone_number_3	=>    	  p_fax
89 	              	,p_add_information15            	=>	  p_email
90 	              	,p_addr_attribute_category     =>	  p_addr_attribute_category
91 	             	,p_addr_attribute1               	=>	  p_addr_attribute1
92 	              	,p_addr_attribute2               	=>	  p_addr_attribute2
93 	              	,p_addr_attribute3               	=>	  p_addr_attribute3
94 	              	,p_addr_attribute4               	=>	  p_addr_attribute4
95 	              	,p_addr_attribute5               	=>	  p_addr_attribute5
96 	              	,p_addr_attribute6               	=>	  p_addr_attribute6
97 	              	,p_addr_attribute7               	=>	  p_addr_attribute7
98 	              	,p_addr_attribute8               	=>	  p_addr_attribute8
99 	              	,p_addr_attribute9               	=>	  p_addr_attribute9
100 	              	,p_addr_attribute10              	=>	  p_addr_attribute10
101 	              	,p_addr_attribute11              	=>	  p_addr_attribute11
102 	              	,p_addr_attribute12              	=>	  p_addr_attribute12
103 	              	,p_addr_attribute13              	=>	  p_addr_attribute13
104 	              	,p_addr_attribute14              	=>	  p_addr_attribute14
105 	              	,p_addr_attribute15              	=>	  p_addr_attribute15
106 	              	,p_addr_attribute16              	=>	  p_addr_attribute16
107 	              	,p_addr_attribute17              	=>	  p_addr_attribute17
108 	              	,p_addr_attribute18              	=>	  p_addr_attribute18
109 	              	,p_addr_attribute19              	=>	  p_addr_attribute19
110 	              	,p_addr_attribute20              	=>	  p_addr_attribute20
111 	              	,p_party_id                      	=>	  p_party_id
112 	              	,p_address_id                    	=>	  p_address_id
113 	              	,p_object_version_number         	=>	  p_object_version_number
114 	             );
115 
116 	END create_ro_person_address;
117 
118 
119 	--
120 	-- ----------------------------------------------------------------------------
121 	-- |-----------------------< update_ro_person_address >-----------------------|
122 	-- ----------------------------------------------------------------------------
123 	--
124 
125 	PROCEDURE update_ro_person_address
126 	  (
127 	   p_validate                   	in     boolean  default false
128 	  ,p_effective_date             	in     date
129 	  ,p_address_id                 	in     number
130 	  ,p_object_version_number    in out nocopy number
131 	  ,p_primary_flag               	in     varchar2
132 	  ,p_date_from                  	in     date
133 	  ,p_date_to                    	in     date     default null
134 	  ,p_address_type               	in     varchar2 default null
135 	  ,p_comments                   	in     long default null
136 	  ,p_county                	in     varchar2 default null
137 	  ,p_locality                	in     varchar2 default null
138 	  ,p_street               		in     varchar2
139 	  ,p_street_number              	in     varchar2 default null
140 	  ,p_building                  	in     varchar2
141 	  ,p_entrance                   	in     varchar2
142 	  ,p_floor                   	in     varchar2
143 	  ,p_apartment_number	in     varchar2
144 	  ,p_postal_code                	in     varchar2 default null
145 	  ,p_country                  	in     varchar2
146 	  ,p_phone                      	in     varchar2 default null
147 	  ,p_mobile                    	in     varchar2
148 	  ,p_fax                   		in     varchar2 default null
149 	  ,p_email			in     varchar2
150 	  ,p_addr_attribute_category   in     varchar2 default null
151 	  ,p_addr_attribute1            	in     varchar2 default null
152 	  ,p_addr_attribute2            	in     varchar2 default null
153 	  ,p_addr_attribute3            	in     varchar2 default null
154 	  ,p_addr_attribute4            	in     varchar2 default null
155 	  ,p_addr_attribute5            	in     varchar2 default null
156 	  ,p_addr_attribute6            	in     varchar2 default null
157 	  ,p_addr_attribute7            	in     varchar2 default null
158 	  ,p_addr_attribute8            	in     varchar2 default null
159 	  ,p_addr_attribute9            	in     varchar2 default null
160 	  ,p_addr_attribute10          	in     varchar2 default null
161 	  ,p_addr_attribute11           	in     varchar2 default null
162 	  ,p_addr_attribute12           	in     varchar2 default null
163 	  ,p_addr_attribute13           	in     varchar2 default null
164 	  ,p_addr_attribute14           	in     varchar2 default null
165 	  ,p_addr_attribute15           	in     varchar2 default null
166 	  ,p_addr_attribute16           	in     varchar2 default null
167 	  ,p_addr_attribute17           	in     varchar2 default null
168 	  ,p_addr_attribute18           	in     varchar2 default null
169 	  ,p_addr_attribute19           	in     varchar2 default null
170 	  ,p_addr_attribute20           	in     varchar2 default null
171 	  ,p_party_id                   	in     number   default null
172 	 ) AS
173 
174 	  l_proc               		 varchar2(72) ;
175 	  l_style              		 per_addresses.style%TYPE;
176 	  l_address_exists		boolean := true;
177 	  --
178 	  cursor csr_add_style is
179 		  select style
180 		   from per_addresses
181 		   where address_id = p_address_id;
182 	  --
183 	BEGIN
184 
185 	    l_proc  := g_package||'update_ro_person_address';
186 
187 	    hr_utility.set_location('Entering:'|| l_proc, 10);
188 	    --
189 	    -- Check that the Address identified is of specified style.
190 	    --
191 	    open  csr_add_style;
192 	    fetch csr_add_style into l_style;
193 		if csr_add_style%notfound then
194 			l_address_exists := FALSE;
195 		end if;
196 		close csr_add_style;
197 
198 	    if not l_address_exists then
199 	        hr_utility.set_location(l_proc, 17);
200 	        hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
201 	        hr_utility.raise_error;
202 	    elsif l_style <> 'RO' then
203 	          hr_utility.set_location(l_proc, 18);
204 	          hr_utility.set_message(801, 'HR_52368_ADD_INV_NOT_CORR_STYLE');
205 	          hr_utility.raise_error;
206 	    end if;
207 	  --
208 	  hr_utility.set_location(l_proc, 9);
209 	  --
210 	  -- Update Person Address details.
211 	  --
212 	  hr_person_address_api.update_person_address
213 	              (p_validate                      	=>	  p_validate
214 	              ,p_effective_date               	=>	  p_effective_date
215 	              ,p_address_id                     =>    p_address_id
216 	              ,p_object_version_number          =>    p_object_version_number
217 	              ,p_primary_flag                  	=>	  p_primary_flag
218 	              ,p_date_from                     	=>	  p_date_from
219 	              ,p_date_to                      	=>	  p_date_to
220 	              ,p_address_type                  	=>	  p_address_type
221 	              ,p_comments                      	=>	  p_comments
222 	              ,p_address_line1                 	=>	  p_county
223 	              ,p_address_line3                 	=>	  p_street
224 				  ,p_address_line2                 	=>	  p_locality
225 				  ,p_region_1                      	=>	  p_street_number
226 	              ,p_region_3                      	=>	  p_building
227 				  ,p_add_information13            	=>	  p_entrance
228 	              ,p_add_information14            	=>	  p_floor
229 				  ,p_add_information16            	=>	  p_apartment_number
230 	              ,p_postal_code                   	=>	  p_postal_code
231 	              ,p_country                       	=>	  p_country
232 				  ,p_telephone_number_1				=>	  p_phone
233 				  ,p_telephone_number_2				=>		p_mobile
234 				  ,p_telephone_number_3				=>		p_fax
235 				  ,p_add_information15            	=>	  p_email
236 	              ,p_addr_attribute_category       	=>	  p_addr_attribute_category
237 	              ,p_addr_attribute1               	=>	  p_addr_attribute1
238 	              ,p_addr_attribute2               	=>	  p_addr_attribute2
239 	              ,p_addr_attribute3               	=>	  p_addr_attribute3
240 	              ,p_addr_attribute4               	=>	  p_addr_attribute4
241 	              ,p_addr_attribute5               	=>	  p_addr_attribute5
242 	              ,p_addr_attribute6               	=>	  p_addr_attribute6
243 	              ,p_addr_attribute7               	=>	  p_addr_attribute7
244 	              ,p_addr_attribute8               	=>	  p_addr_attribute8
245 	              ,p_addr_attribute9               	=>	  p_addr_attribute9
246 	              ,p_addr_attribute10              	=>	  p_addr_attribute10
247 	              ,p_addr_attribute11              	=>	  p_addr_attribute11
248 	              ,p_addr_attribute12              	=>	  p_addr_attribute12
249 	              ,p_addr_attribute13              	=>	  p_addr_attribute13
250 	              ,p_addr_attribute14              	=>	  p_addr_attribute14
251 	              ,p_addr_attribute15              	=>	  p_addr_attribute15
252 	              ,p_addr_attribute16              	=>	  p_addr_attribute16
253 	              ,p_addr_attribute17              	=>	  p_addr_attribute17
254 	              ,p_addr_attribute18              	=>	  p_addr_attribute18
255 	              ,p_addr_attribute19              	=>	  p_addr_attribute19
256 	              ,p_addr_attribute20              	=>	  p_addr_attribute20
257 	              ,p_party_id                      	=>	  p_party_id
258 	             );
259 
260 	  --
261 	  hr_utility.set_location(' Leaving:'||l_proc, 10);
262 	  --
263 	END update_ro_person_address;
264 
265 	procedure update_ro_person_add_style
266 	 (
267 	   p_validate                   	in     boolean  default false
268 	  ,p_effective_date             	in     date
269 	  ,p_address_id                 	in     number
270 	  ,p_style			in     varchar2
271 	  ,p_object_version_number    in out nocopy number
272 	  ,p_primary_flag               	in     varchar2
273 	  ,p_date_from                  	in     date
274 	  ,p_date_to                    	in     date     default null
275 	  ,p_address_type               	in     varchar2 default null
276 	  ,p_comments                   	in     long default null
277 	  ,p_county                	in     varchar2 default null
278 	  ,p_locality                	in     varchar2 default null
279 	  ,p_street               		in     varchar2
280 	  ,p_street_number              	in     varchar2 default null
281 	  ,p_building                  	in     varchar2
282 	  ,p_entrance                   	in     varchar2
283 	  ,p_floor                   	in     varchar2
284 	  ,p_apartment_number	in	   varchar2
285 	  ,p_postal_code                	in     varchar2 default null
286 	  ,p_country                  	in     varchar2
287 	  ,p_phone                      	in     varchar2 default null
288 	  ,p_mobile                    	in     varchar2
289 	  ,p_fax                   		in     varchar2 default null
290 	  ,p_email			in		varchar2
291 	  ,p_addr_attribute_category   in     varchar2 default null
292 	  ,p_addr_attribute1            in     varchar2 default null
293 	  ,p_addr_attribute2            in     varchar2 default null
294 	  ,p_addr_attribute3            in     varchar2 default null
295 	  ,p_addr_attribute4            in     varchar2 default null
296 	  ,p_addr_attribute5            in     varchar2 default null
297 	  ,p_addr_attribute6            in     varchar2 default null
298 	  ,p_addr_attribute7            in     varchar2 default null
299 	  ,p_addr_attribute8            in     varchar2 default null
300 	  ,p_addr_attribute9            in     varchar2 default null
301 	  ,p_addr_attribute10           in     varchar2 default null
302 	  ,p_addr_attribute11           in     varchar2 default null
303 	  ,p_addr_attribute12           in     varchar2 default null
304 	  ,p_addr_attribute13           in     varchar2 default null
305 	  ,p_addr_attribute14           in     varchar2 default null
306 	  ,p_addr_attribute15           in     varchar2 default null
307 	  ,p_addr_attribute16           in     varchar2 default null
308 	  ,p_addr_attribute17           in     varchar2 default null
309 	  ,p_addr_attribute18           in     varchar2 default null
310 	  ,p_addr_attribute19           in     varchar2 default null
311 	  ,p_addr_attribute20           in     varchar2 default null
312 	  ,p_party_id                        in     number   default null
313 	 )AS
314 	  --
315 	  -- Declare cursors and local variables
316 	  --
317 	  l_proc                varchar2(72) ;
318 	  l_style               per_addresses.style%TYPE;
319 	  l_address_exists		boolean := true;
320 	  --
321 	    cursor csr_add_style is
322 		  select style
323 		   from per_addresses
324 		   where address_id = p_address_id;
325 	  --
326 	BEGIN
327 
328 	    l_proc  := g_package||'update_ro_person_add_style';
329 
330 	    hr_utility.set_location('Entering:'|| l_proc, 10);
331 	    --
332 		open  csr_add_style;
333 	    fetch csr_add_style into l_style;
334 		if csr_add_style%notfound then
335 			l_address_exists := FALSE;
336 		end if;
337 		close csr_add_style;
338 	  --
339 		if not l_address_exists then
340 	        hr_utility.set_location(l_proc, 17);
341 	        hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
342 	        hr_utility.raise_error;
343 		end if;
344 
345 	  hr_person_address_api.update_pers_addr_with_style
346 	              (p_validate                      	=>	  p_validate
347 	              ,p_effective_date               	=>	  p_effective_date
348 	              ,p_address_id                     	=>    	  p_address_id
349 	              ,p_object_version_number        =>    	  p_object_version_number
350 	              ,p_primary_flag                  	=>	  p_primary_flag
351 	              ,p_date_from                     	=>	  p_date_from
352 	              ,p_date_to                      	=>	  p_date_to
353 	              ,p_address_type                  	=>	  p_address_type
354 	              ,p_comments                      	=>	  p_comments
355 	              ,p_address_line1                 	=>	  p_county
356 	              ,p_address_line3                 	=>	  p_street
357 	              ,p_address_line2                 	=>	  p_locality
358 	              ,p_region_1                      	=>	  p_street_number
359 	              ,p_region_3                      	=>	  p_building
360 	              ,p_add_information13            	=>	  p_entrance
361 	              ,p_add_information14            	=>	  p_floor
362 	              ,p_add_information16            	=>	  p_apartment_number
363 	              ,p_postal_code                   	=>	  p_postal_code
364 	              ,p_country                       	=>	  p_country
365 	              ,p_telephone_number_1	=>	  p_phone
366 	              ,p_telephone_number_2	=>	  p_mobile
367 	              ,p_telephone_number_3	=> 	  p_fax
368 	              ,p_add_information15            	=>	  p_email
369 	              ,p_addr_attribute_category      	=>	  p_addr_attribute_category
370 	              ,p_addr_attribute1               	=>	  p_addr_attribute1
371 	              ,p_addr_attribute2               	=>	  p_addr_attribute2
372 	              ,p_addr_attribute3               	=>	  p_addr_attribute3
373 	              ,p_addr_attribute4               	=>	  p_addr_attribute4
374 	              ,p_addr_attribute5               	=>	  p_addr_attribute5
375 	              ,p_addr_attribute6               	=>	  p_addr_attribute6
376 	              ,p_addr_attribute7               	=>	  p_addr_attribute7
377 	              ,p_addr_attribute8               	=>	  p_addr_attribute8
378 	              ,p_addr_attribute9               	=>	  p_addr_attribute9
379 	              ,p_addr_attribute10              	=>	  p_addr_attribute10
380 	              ,p_addr_attribute11              	=>	  p_addr_attribute11
381 	              ,p_addr_attribute12              	=>	  p_addr_attribute12
382 	              ,p_addr_attribute13              	=>	  p_addr_attribute13
383 	              ,p_addr_attribute14              	=>	  p_addr_attribute14
384 	              ,p_addr_attribute15              	=>	  p_addr_attribute15
385 	              ,p_addr_attribute16              	=>	  p_addr_attribute16
386 	              ,p_addr_attribute17              	=>	  p_addr_attribute17
387 	              ,p_addr_attribute18              	=>	  p_addr_attribute18
388 	              ,p_addr_attribute19              	=>	  p_addr_attribute19
389 	              ,p_addr_attribute20              	=>	  p_addr_attribute20
390 	              ,p_party_id                      	=>	  p_party_id
391 	              ,p_style			=>	  p_style
392 	             );
393 
394 	  --
395 	  hr_utility.set_location(' Leaving:'||l_proc, 10);
396 	  --
397 	END update_ro_person_add_style;
398 
399 	END hr_ro_person_address_api;