DBA Data[Home] [Help]

PACKAGE BODY: APPS.GHR_PERSON_ADDRESS_API

Source


1 Package Body ghr_person_address_api as
2 /* $Header: ghaddapi.pkb 120.1 2005/07/01 12:43:45 vnarasim noship $ */
3 --
4 -- Package Variables
5 --
6 g_package  varchar2(33) := '  ghr_person_address_api.';
7 --
8 --
9 -- ----------------------------------------------------------------------------
10 -- |-----------------------< create_us_person_address >-----------------------|
11 -- ----------------------------------------------------------------------------
12 --
13 procedure create_us_person_address
14   (p_validate                      in     boolean  default false
15   ,p_effective_date                in     date
16   ,p_person_id                     in     number
17   ,p_primary_flag                  in     varchar2
18   ,p_date_from                     in     date
19   ,p_date_to                       in     date     default null
20   ,p_address_type                  in     varchar2 default null
21   ,p_comments                      in     long default null
22   ,p_address_line1                 in     varchar2
23   ,p_address_line2                 in     varchar2 default null
24   ,p_address_line3                 in     varchar2 default null
25   ,p_city                          in     varchar2 default null
26   ,p_state                         in     varchar2 default null
27   ,p_zip_code                      in     varchar2 default null
28   ,p_county                        in     varchar2 default null
29   ,p_country                       in     varchar2
30   ,p_telephone_number_1            in     varchar2 default null
31   ,p_telephone_number_2            in     varchar2 default null
32   ,p_addr_attribute_category       in     varchar2 default null
33   ,p_addr_attribute1               in     varchar2 default null
34   ,p_addr_attribute2               in     varchar2 default null
35   ,p_addr_attribute3               in     varchar2 default null
36   ,p_addr_attribute4               in     varchar2 default null
37   ,p_addr_attribute5               in     varchar2 default null
38   ,p_addr_attribute6               in     varchar2 default null
39   ,p_addr_attribute7               in     varchar2 default null
40   ,p_addr_attribute8               in     varchar2 default null
41   ,p_addr_attribute9               in     varchar2 default null
42   ,p_addr_attribute10              in     varchar2 default null
43   ,p_addr_attribute11              in     varchar2 default null
44   ,p_addr_attribute12              in     varchar2 default null
45   ,p_addr_attribute13              in     varchar2 default null
46   ,p_addr_attribute14              in     varchar2 default null
47   ,p_addr_attribute15              in     varchar2 default null
48   ,p_addr_attribute16              in     varchar2 default null
49   ,p_addr_attribute17              in     varchar2 default null
50   ,p_addr_attribute18              in     varchar2 default null
51   ,p_addr_attribute19              in     varchar2 default null
52   ,p_addr_attribute20              in     varchar2 default null
53   ,p_address_id                       out nocopy  number
54   ,p_object_version_number            out nocopy  number
55   ) is
56   --
57   -- Declare cursors and local variables
58   --
59   l_proc                varchar2(72) := g_package||'create_us_person_address';
60   --
61 begin
62   hr_utility.set_location('Entering:'|| l_proc, 5);
63 
64     savepoint ghr_create_us_person_address;
65 
66   hr_utility.set_location(l_proc, 6);
67 
68   -- set session variables
69      ghr_session.set_session_var_for_core
70      (p_effective_date   => p_effective_date
71      );
72 
73   -- Call US Person Address api
74   --
75   hr_utility.set_location(l_proc, 10);
76   hr_person_address_api.create_us_person_address
77     (--p_validate                      => p_validate
78     p_effective_date                => p_effective_date
79     ,p_person_id                     => p_person_id
80     ,p_primary_flag                  => p_primary_flag
81     ,p_date_from                     => p_date_from
82     ,p_date_to                       => p_date_to
83     ,p_address_type                  => p_address_type
84     ,p_comments                      => p_comments
85     ,p_address_line1                 => p_address_line1
86     ,p_address_line2                 => p_address_line2
87     ,p_address_line3                 => p_address_line3
88     ,p_city                          => p_city
89     ,p_county                        => p_county
90     ,p_state                         => p_state
91     ,p_zip_code                      => p_zip_code
92     ,p_country                       => p_country
93     ,p_telephone_number_1            => p_telephone_number_1
94     ,p_telephone_number_2            => p_telephone_number_2
95     ,p_addr_attribute_category       => p_addr_attribute_category
96     ,p_addr_attribute1               => p_addr_attribute1
97     ,p_addr_attribute2               => p_addr_attribute2
98     ,p_addr_attribute3               => p_addr_attribute3
99     ,p_addr_attribute4               => p_addr_attribute4
100     ,p_addr_attribute5               => p_addr_attribute5
101     ,p_addr_attribute6               => p_addr_attribute6
102     ,p_addr_attribute7               => p_addr_attribute7
103     ,p_addr_attribute8               => p_addr_attribute8
104     ,p_addr_attribute9               => p_addr_attribute9
105     ,p_addr_attribute10              => p_addr_attribute10
106     ,p_addr_attribute11              => p_addr_attribute11
107     ,p_addr_attribute12              => p_addr_attribute12
108     ,p_addr_attribute13              => p_addr_attribute13
109     ,p_addr_attribute14              => p_addr_attribute14
110     ,p_addr_attribute15              => p_addr_attribute15
111     ,p_addr_attribute16              => p_addr_attribute16
112     ,p_addr_attribute17              => p_addr_attribute17
113     ,p_addr_attribute18              => p_addr_attribute18
114     ,p_addr_attribute19              => p_addr_attribute19
115     ,p_addr_attribute20              => p_addr_attribute20
116     ,p_address_id                    => p_address_id
117     ,p_object_version_number         => p_object_version_number
118     );
119   --
120   hr_utility.set_location(l_proc, 20);
121   ghr_history_api.post_update_process;
122   hr_utility.set_location(l_proc,25);
123   --
124   -- When in validation only mode raise the Validate_Enabled exception
125   --
126   if p_validate then
127     hr_utility.set_location(l_proc, 30);
128     raise hr_api.validate_enabled;
129   end if;
130   --
131   hr_utility.set_location(' Leaving:'||l_proc, 11);
132 exception
133   when hr_api.validate_enabled then
134     hr_utility.set_location(l_proc, 35);
135     --
136     -- As the Validate_Enabled exception has been raised
137     -- we must rollback to the savepoint
138     --
139     ROLLBACK TO ghr_create_us_person_address;
140     --
141     -- Only set output warning arguments
142     -- (Any key or derived arguments must be set to null
143     -- when validation only mode is being used.)
144     --
145     hr_utility.set_location(' Leaving:'||l_proc, 40);
146    when others then
147      ROLLBACK TO ghr_create_us_person_address;
148      p_address_id            := null;
149      p_object_version_number := null;
150      raise;
151 end create_us_person_address;
152 
153 --
154 -- ----------------------------------------------------------------------------
155 -- |-----------------------< create_us_int_person_address >-----------------------|
156 -- ----------------------------------------------------------------------------
157 --
158 procedure create_us_int_person_address
159   (p_validate                      in     boolean  default false
160   ,p_effective_date                in     date
161   ,p_pradd_ovlapval_override       in     boolean  default FALSE
162   ,p_validate_county               in     boolean  default true
163   ,p_person_id                     in     number
164   ,p_primary_flag                  in     varchar2
165   ,p_date_from                     in     date
166   ,p_date_to                       in     date     default null
167   ,p_address_type                  in     varchar2 default null
168   ,p_comments                      in     long default null
169   ,p_address_line1                 in     varchar2
170   ,p_address_line2                 in     varchar2 default null
171   ,p_address_line3                 in     varchar2 default null
172   ,p_city                          in     varchar2 default null
173   ,p_state                         in     varchar2 default null
174   ,p_zip_code                      in     varchar2 default null
175   ,p_county                        in     varchar2 default null
176   ,p_country                       in     varchar2
177   ,p_telephone_number_1            in     varchar2 default null
178   ,p_telephone_number_2            in     varchar2 default null
179   ,p_addr_attribute_category       in     varchar2 default null
180   ,p_addr_attribute1               in     varchar2 default null
181   ,p_addr_attribute2               in     varchar2 default null
182   ,p_addr_attribute3               in     varchar2 default null
183   ,p_addr_attribute4               in     varchar2 default null
184   ,p_addr_attribute5               in     varchar2 default null
185   ,p_addr_attribute6               in     varchar2 default null
186   ,p_addr_attribute7               in     varchar2 default null
187   ,p_addr_attribute8               in     varchar2 default null
188   ,p_addr_attribute9               in     varchar2 default null
189   ,p_addr_attribute10              in     varchar2 default null
190   ,p_addr_attribute11              in     varchar2 default null
191   ,p_addr_attribute12              in     varchar2 default null
192   ,p_addr_attribute13              in     varchar2 default null
193   ,p_addr_attribute14              in     varchar2 default null
194   ,p_addr_attribute15              in     varchar2 default null
195   ,p_addr_attribute16              in     varchar2 default null
196   ,p_addr_attribute17              in     varchar2 default null
197   ,p_addr_attribute18              in     varchar2 default null
198   ,p_addr_attribute19              in     varchar2 default null
199   ,p_addr_attribute20              in     varchar2 default null
200   ,p_add_information13             in     varchar2 default null
201   ,p_add_information14             in     varchar2 default null
202   ,p_add_information15             in     varchar2 default null
203   ,p_add_information16             in     varchar2 default null
204   ,p_add_information17             in     varchar2 default null
205   ,p_add_information18             in     varchar2 default null
206   ,p_add_information19             in     varchar2 default null
207   ,p_add_information20             in     varchar2 default null
208   ,p_party_id                      in     number   default null -- HR/TCA merge
209   ,p_address_id                       out nocopy  number
210   ,p_object_version_number            out nocopy  number
211   ) is
212   --
213   -- Declare cursors and local variables
214   --
215   l_proc                varchar2(72) := g_package||'create_us_int_person_address';
216   --
217 begin
218   hr_utility.set_location('Entering:'|| l_proc, 5);
219 
220     savepoint ghr_create_us_int_per_address;
221 
222   hr_utility.set_location(l_proc, 6);
223 
224   -- set session variables
225      ghr_session.set_session_var_for_core
226      (p_effective_date   => p_effective_date
227      );
228 
229   -- Call US Person Address api
230   --
231   hr_utility.set_location(l_proc, 10);
232    hr_person_address_api.create_person_address
233     (p_validate                      => p_validate
234     ,p_effective_date                => p_effective_date
235     ,p_pradd_ovlapval_override       => p_pradd_ovlapval_override
236     ,p_validate_county               => p_validate_county
237     ,p_person_id                     => p_person_id
238     ,p_primary_flag                  => p_primary_flag
239     ,p_style                         => 'US_GLB'
240     ,p_date_from                     => p_date_from
241     ,p_date_to                       => p_date_to
242     ,p_address_type                  => p_address_type
243     ,p_comments                      => p_comments
244     ,p_address_line1                 => p_address_line1
245     ,p_address_line2                 => p_address_line2
246     ,p_address_line3                 => p_address_line3
247     ,p_town_or_city                  => p_city
248     ,p_region_1                      => p_county
249     ,p_region_2                      => p_state
250     ,p_postal_code                   => p_zip_code
251     ,p_country                       => p_country
252     ,p_telephone_number_1            => p_telephone_number_1
253     ,p_telephone_number_2            => p_telephone_number_2
254     ,p_addr_attribute_category       => p_addr_attribute_category
255     ,p_addr_attribute1               => p_addr_attribute1
256     ,p_addr_attribute2               => p_addr_attribute2
257     ,p_addr_attribute3               => p_addr_attribute3
258     ,p_addr_attribute4               => p_addr_attribute4
259     ,p_addr_attribute5               => p_addr_attribute5
260     ,p_addr_attribute6               => p_addr_attribute6
261     ,p_addr_attribute7               => p_addr_attribute7
262     ,p_addr_attribute8               => p_addr_attribute8
263     ,p_addr_attribute9               => p_addr_attribute9
264     ,p_addr_attribute10              => p_addr_attribute10
265     ,p_addr_attribute11              => p_addr_attribute11
266     ,p_addr_attribute12              => p_addr_attribute12
267     ,p_addr_attribute13              => p_addr_attribute13
268     ,p_addr_attribute14              => p_addr_attribute14
269     ,p_addr_attribute15              => p_addr_attribute15
270     ,p_addr_attribute16              => p_addr_attribute16
271     ,p_addr_attribute17              => p_addr_attribute17
272     ,p_addr_attribute18              => p_addr_attribute18
273     ,p_addr_attribute19              => p_addr_attribute19
274     ,p_addr_attribute20              => p_addr_attribute20
275     ,p_add_information13             => p_add_information13
276     ,p_add_information14             => p_add_information14
277     ,p_add_information15             => p_add_information15
278     ,p_add_information16             => p_add_information16
279     ,p_add_information17             => p_add_information17
280     ,p_add_information18             => p_add_information18
281     ,p_add_information19             => p_add_information19
282     ,p_add_information20             => p_add_information20
283     ,p_party_id                      => p_party_id -- HR/TCA merge
284     ,p_address_id                    => p_address_id
285     ,p_object_version_number         => p_object_version_number
286     );
287 
288   --
289   hr_utility.set_location(l_proc, 20);
290   ghr_history_api.post_update_process;
291   hr_utility.set_location(l_proc,25);
292   --
293   -- When in validation only mode raise the Validate_Enabled exception
294   --
295   if p_validate then
296     hr_utility.set_location(l_proc, 30);
297     raise hr_api.validate_enabled;
298   end if;
299   --
300   hr_utility.set_location(' Leaving:'||l_proc, 11);
301 exception
302   when hr_api.validate_enabled then
303     hr_utility.set_location(l_proc, 35);
304     --
305     -- As the Validate_Enabled exception has been raised
306     -- we must rollback to the savepoint
307     --
308     ROLLBACK TO ghr_create_us_int_per_address;
309     --
310     -- Only set output warning arguments
311     -- (Any key or derived arguments must be set to null
312     -- when validation only mode is being used.)
313     --
314     hr_utility.set_location(' Leaving:'||l_proc, 40);
315    when others then
316      ROLLBACK TO ghr_create_us_int_per_address;
317      p_address_id            := null;
318      p_object_version_number := null;
319      raise;
320 end create_us_int_person_address;
321 --
322 --
323 -- ----------------------------------------------------------------------------
324 -- |-----------------------< update_us_person_address >-----------------------|
325 -- ----------------------------------------------------------------------------
326 --
327 procedure update_us_person_address
328   (p_validate                      in     boolean  default false
329   ,p_effective_date                in     date
330   ,p_address_id                    in     number
331   ,p_object_version_number         in out nocopy  number
332   ,p_date_from                     in     date     default hr_api.g_date
333   ,p_date_to                       in     date     default hr_api.g_date
334   ,p_address_type                  in     varchar2 default hr_api.g_varchar2
335   ,p_comments                      in     long default hr_api.g_varchar2
336   ,p_address_line1                 in     varchar2 default hr_api.g_varchar2
337   ,p_address_line2                 in     varchar2 default hr_api.g_varchar2
338   ,p_address_line3                 in     varchar2 default hr_api.g_varchar2
339   ,p_city                          in     varchar2 default hr_api.g_varchar2
340   ,p_state                         in     varchar2 default hr_api.g_varchar2
341   ,p_zip_code                      in     varchar2 default hr_api.g_varchar2
342   ,p_county                        in     varchar2 default hr_api.g_varchar2
343   ,p_country                       in     varchar2 default hr_api.g_varchar2
344   ,p_telephone_number_1            in     varchar2 default hr_api.g_varchar2
345   ,p_telephone_number_2            in     varchar2 default hr_api.g_varchar2
346   ,p_addr_attribute_category       in     varchar2 default hr_api.g_varchar2
347   ,p_addr_attribute1               in     varchar2 default hr_api.g_varchar2
348   ,p_addr_attribute2               in     varchar2 default hr_api.g_varchar2
349   ,p_addr_attribute3               in     varchar2 default hr_api.g_varchar2
350   ,p_addr_attribute4               in     varchar2 default hr_api.g_varchar2
351   ,p_addr_attribute5               in     varchar2 default hr_api.g_varchar2
352   ,p_addr_attribute6               in     varchar2 default hr_api.g_varchar2
353   ,p_addr_attribute7               in     varchar2 default hr_api.g_varchar2
354   ,p_addr_attribute8               in     varchar2 default hr_api.g_varchar2
355   ,p_addr_attribute9               in     varchar2 default hr_api.g_varchar2
356   ,p_addr_attribute10              in     varchar2 default hr_api.g_varchar2
357   ,p_addr_attribute11              in     varchar2 default hr_api.g_varchar2
358   ,p_addr_attribute12              in     varchar2 default hr_api.g_varchar2
359   ,p_addr_attribute13              in     varchar2 default hr_api.g_varchar2
360   ,p_addr_attribute14              in     varchar2 default hr_api.g_varchar2
361   ,p_addr_attribute15              in     varchar2 default hr_api.g_varchar2
362   ,p_addr_attribute16              in     varchar2 default hr_api.g_varchar2
363   ,p_addr_attribute17              in     varchar2 default hr_api.g_varchar2
364   ,p_addr_attribute18              in     varchar2 default hr_api.g_varchar2
365   ,p_addr_attribute19              in     varchar2 default hr_api.g_varchar2
366   ,p_addr_attribute20              in     varchar2 default hr_api.g_varchar2
367   ) is
368   --
369   -- Declare cursors and local variables
370   --
371   l_proc                   varchar2(72) := g_package||'update_us_person_address';
372   l_object_version_number  per_addresses.object_version_number%type;
373   --
374 begin
375   hr_utility.set_location('Entering:'|| l_proc, 5);
376   --
377     l_object_version_number    :=  p_object_version_number;
378     hr_utility.set_location(l_proc, 10);
379     savepoint ghr_update_us_person_address;
380 
381 
382   --
383   hr_utility.set_location(l_proc, 15);
384   ghr_session.set_session_var_for_core
385   (p_effective_date     =>   p_effective_date
386   );
387 
388   --
389   hr_utility.set_location(l_proc, 20);
390   hr_person_address_api.update_us_person_address
391     (--p_validate                     => p_validate
392     p_effective_date               => p_effective_date
393     ,p_address_id                   => p_address_id
394     ,p_object_version_number        => p_object_version_number
395     ,p_date_from                    => p_date_from
396     ,p_date_to                      => p_date_to
397     ,p_address_type                 => p_address_type
398     ,p_comments                     => p_comments
399     ,p_address_line1                => p_address_line1
400     ,p_address_line2                => p_address_line2
401     ,p_address_line3                => p_address_line3
402     ,p_city  		            => p_city
403     ,p_county                       => p_county
404     ,p_state                        => p_state
405     ,p_zip_code                     => p_zip_code
406     ,p_country                      => p_country
407     ,p_telephone_number_1           => p_telephone_number_1
408     ,p_telephone_number_2           => p_telephone_number_2
409     ,p_addr_attribute_category      => p_addr_attribute_category
410     ,p_addr_attribute1              => p_addr_attribute1
411     ,p_addr_attribute2              => p_addr_attribute2
412     ,p_addr_attribute3              => p_addr_attribute3
413     ,p_addr_attribute4              => p_addr_attribute4
414     ,p_addr_attribute5              => p_addr_attribute5
415     ,p_addr_attribute6              => p_addr_attribute6
416     ,p_addr_attribute7              => p_addr_attribute7
417     ,p_addr_attribute8              => p_addr_attribute8
418     ,p_addr_attribute9              => p_addr_attribute9
419     ,p_addr_attribute10             => p_addr_attribute10
420     ,p_addr_attribute11             => p_addr_attribute11
421     ,p_addr_attribute12             => p_addr_attribute12
422     ,p_addr_attribute13             => p_addr_attribute13
423     ,p_addr_attribute14             => p_addr_attribute14
424     ,p_addr_attribute15             => p_addr_attribute15
425     ,p_addr_attribute16             => p_addr_attribute16
426     ,p_addr_attribute17             => p_addr_attribute17
427     ,p_addr_attribute18             => p_addr_attribute18
428     ,p_addr_attribute19             => p_addr_attribute19
429     ,p_addr_attribute20             => p_addr_attribute20
430     );
431   --
432    hr_utility.set_location(l_proc, 25);
433   ghr_history_api.post_update_process;
434   hr_utility.set_location(' Leaving:'||l_proc, 30);
435   if p_validate then
436     raise hr_api.validate_enabled;
437   end if;
438   --
439   hr_utility.set_location(l_proc, 40);
440 exception
441   when hr_api.validate_enabled then
442     --
443     -- As the Validate_Enabled exception has been raised
444     -- we must rollback to the savepoint
445     --
446     hr_utility.set_location(l_proc, 45);
447     ROLLBACK TO ghr_update_us_person_address;
448     --
449     -- Only set output warning arguments
450     -- (Any key or derived arguments must be set to null
451     -- when validation only mode is being used.)
452     --
453     p_object_version_number := l_object_version_number;
454      hr_utility.set_location(' Leaving:'||l_proc, 50);
455     when others then
456      ROLLBACK TO ghr_update_us_person_address;
457      p_object_version_number := l_object_version_number;
458      raise;
459 end update_us_person_address;
460 --
461 --
462 -- ----------------------------------------------------------------------------
463 -- |-----------------------< update_us_int_person_address >-----------------------|
464 -- ----------------------------------------------------------------------------
465 --
466 procedure update_us_int_person_address
467   (p_validate                      in     boolean  default false
468   ,p_effective_date                in     date
469   ,p_validate_county               in     boolean  default true
470   ,p_address_id                    in     number
471   ,p_object_version_number         in out nocopy  number
472   ,p_date_from                     in     date     default hr_api.g_date
473   ,p_date_to                       in     date     default hr_api.g_date
474   ,p_address_type                  in     varchar2 default hr_api.g_varchar2
475   ,p_comments                      in     long default hr_api.g_varchar2
476   ,p_address_line1                 in     varchar2 default hr_api.g_varchar2
477   ,p_address_line2                 in     varchar2 default hr_api.g_varchar2
478   ,p_address_line3                 in     varchar2 default hr_api.g_varchar2
479   ,p_city                          in     varchar2 default hr_api.g_varchar2
480   ,p_state                         in     varchar2 default hr_api.g_varchar2
481   ,p_zip_code                      in     varchar2 default hr_api.g_varchar2
482   ,p_county                        in     varchar2 default hr_api.g_varchar2
483   ,p_country                       in     varchar2 default hr_api.g_varchar2
484   ,p_telephone_number_1            in     varchar2 default hr_api.g_varchar2
485   ,p_telephone_number_2            in     varchar2 default hr_api.g_varchar2
486   ,p_addr_attribute_category       in     varchar2 default hr_api.g_varchar2
487   ,p_addr_attribute1               in     varchar2 default hr_api.g_varchar2
488   ,p_addr_attribute2               in     varchar2 default hr_api.g_varchar2
489   ,p_addr_attribute3               in     varchar2 default hr_api.g_varchar2
490   ,p_addr_attribute4               in     varchar2 default hr_api.g_varchar2
491   ,p_addr_attribute5               in     varchar2 default hr_api.g_varchar2
492   ,p_addr_attribute6               in     varchar2 default hr_api.g_varchar2
493   ,p_addr_attribute7               in     varchar2 default hr_api.g_varchar2
494   ,p_addr_attribute8               in     varchar2 default hr_api.g_varchar2
495   ,p_addr_attribute9               in     varchar2 default hr_api.g_varchar2
496   ,p_addr_attribute10              in     varchar2 default hr_api.g_varchar2
497   ,p_addr_attribute11              in     varchar2 default hr_api.g_varchar2
498   ,p_addr_attribute12              in     varchar2 default hr_api.g_varchar2
499   ,p_addr_attribute13              in     varchar2 default hr_api.g_varchar2
500   ,p_addr_attribute14              in     varchar2 default hr_api.g_varchar2
501   ,p_addr_attribute15              in     varchar2 default hr_api.g_varchar2
502   ,p_addr_attribute16              in     varchar2 default hr_api.g_varchar2
503   ,p_addr_attribute17              in     varchar2 default hr_api.g_varchar2
504   ,p_addr_attribute18              in     varchar2 default hr_api.g_varchar2
505   ,p_addr_attribute19              in     varchar2 default hr_api.g_varchar2
506   ,p_addr_attribute20              in     varchar2 default hr_api.g_varchar2
507   ,p_add_information13             in     varchar2 default hr_api.g_varchar2
508   ,p_add_information14             in     varchar2 default hr_api.g_varchar2
509   ,p_add_information15             in     varchar2 default hr_api.g_varchar2
510   ,p_add_information16             in     varchar2 default hr_api.g_varchar2
511   ,p_add_information17             in     varchar2 default hr_api.g_varchar2
512   ,p_add_information18             in     varchar2 default hr_api.g_varchar2
513   ,p_add_information19             in     varchar2 default hr_api.g_varchar2
514   ,p_add_information20             in     varchar2 default hr_api.g_varchar2
515   ) is
516   --
517   -- Declare cursors and local variables
518   --
519   l_proc                   varchar2(72) := g_package||'update_us_int_person_address';
520   l_object_version_number  per_addresses.object_version_number%type;
521   l_style                  varchar2(80);
522   --
523   cursor csr_add_style is
524   select style
525     from per_addresses
526    where address_id = p_address_id;
527   --
528 begin
529   hr_utility.set_location('Entering:'|| l_proc, 5);
530   -- NOCOPY Changes
531   l_object_version_number := p_object_version_number;
532   --
533   -- Check that the address is US International style.
534   --
535   open  csr_add_style;
536   fetch csr_add_style
537    into l_style;
538   if csr_add_style%notfound then
539     close csr_add_style;
540     --
541     hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
542     hr_utility.raise_error;
543   else
544     hr_utility.set_location(l_proc, 10);
545     --
546     close csr_add_style;
547     --
548     if l_style <> 'US_GLB' then
549       hr_utility.set_message(801, 'HR_51283_ADD_MUST_BE_US_STYLE');
550       hr_utility.raise_error;
551     end if;
552   end if;
553   --
554     savepoint ghr_update_us_int_per_address;
555 
556   l_object_version_number    :=  p_object_version_number;
557   --
558   hr_utility.set_location(l_proc, 15);
559   ghr_session.set_session_var_for_core
560   (p_effective_date     =>   p_effective_date
561   );
562 
563   --
564   hr_utility.set_location(l_proc, 20);
565   hr_person_address_api.update_person_address
566     (p_validate                     => p_validate
567     ,p_validate_county              => p_validate_county
568     ,p_effective_date               => p_effective_date
569     ,p_address_id                   => p_address_id
570     ,p_object_version_number        => p_object_version_number
571     ,p_date_from                    => p_date_from
572     ,p_date_to                      => p_date_to
573     ,p_address_type                 => p_address_type
574     ,p_comments                     => p_comments
575     ,p_address_line1                => p_address_line1
576     ,p_address_line2                => p_address_line2
577     ,p_address_line3                => p_address_line3
578     ,p_town_or_city                 => p_city
579     ,p_region_1                     => p_county
580     ,p_region_2                     => p_state
581     ,p_postal_code                  => p_zip_code
582     ,p_country                      => p_country
583     ,p_telephone_number_1           => p_telephone_number_1
584     ,p_telephone_number_2           => p_telephone_number_2
585     ,p_addr_attribute_category      => p_addr_attribute_category
586     ,p_addr_attribute1              => p_addr_attribute1
587     ,p_addr_attribute2              => p_addr_attribute2
588     ,p_addr_attribute3              => p_addr_attribute3
589     ,p_addr_attribute4              => p_addr_attribute4
590     ,p_addr_attribute5              => p_addr_attribute5
591     ,p_addr_attribute6              => p_addr_attribute6
592     ,p_addr_attribute7              => p_addr_attribute7
593     ,p_addr_attribute8              => p_addr_attribute8
594     ,p_addr_attribute9              => p_addr_attribute9
595     ,p_addr_attribute10             => p_addr_attribute10
596     ,p_addr_attribute11             => p_addr_attribute11
597     ,p_addr_attribute12             => p_addr_attribute12
598     ,p_addr_attribute13             => p_addr_attribute13
599     ,p_addr_attribute14             => p_addr_attribute14
600     ,p_addr_attribute15             => p_addr_attribute15
601     ,p_addr_attribute16             => p_addr_attribute16
602     ,p_addr_attribute17             => p_addr_attribute17
603     ,p_addr_attribute18             => p_addr_attribute18
604     ,p_addr_attribute19             => p_addr_attribute19
605     ,p_addr_attribute20             => p_addr_attribute20
606     ,p_add_information13            => p_add_information13
607     ,p_add_information14            => p_add_information14
608     ,p_add_information15            => p_add_information15
609     ,p_add_information16            => p_add_information16
610     ,p_add_information17            => p_add_information17
611     ,p_add_information18            => p_add_information18
612     ,p_add_information19            => p_add_information19
613     ,p_add_information20            => p_add_information20
614     );
615   --
616   hr_utility.set_location(l_proc, 25);
617   ghr_history_api.post_update_process;
618   hr_utility.set_location(' Leaving:'||l_proc, 30);
619   if p_validate then
620     raise hr_api.validate_enabled;
621   end if;
622   --
623   hr_utility.set_location(l_proc, 40);
624 exception
625   when hr_api.validate_enabled then
626     --
627     -- As the Validate_Enabled exception has been raised
628     -- we must rollback to the savepoint
629     --
630     hr_utility.set_location(l_proc, 45);
631     ROLLBACK TO ghr_update_us_int_per_address;
632     --
633     -- Only set output warning arguments
634     -- (Any key or derived arguments must be set to null
635     -- when validation only mode is being used.)
636     --
637     p_object_version_number := l_object_version_number;
638      hr_utility.set_location(' Leaving:'||l_proc, 50);
639     when others then
640      ROLLBACK TO ghr_update_us_int_per_address;
641      p_object_version_number := l_object_version_number;
642      raise;
643 end update_us_int_person_address;
644 --
645 end ghr_person_address_api;