DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_PARTICIPANTS_SWI

Source


1 Package Body hr_participants_swi As
2 /* $Header: peparswi.pkb 120.1 2007/06/20 07:48:40 rapandi ship $ */
3 --
4 -- Package variables
5 --
6 g_package  varchar2(33) := 'hr_participants_swi.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |--------------------------< create_participant >--------------------------|
10 -- ----------------------------------------------------------------------------
11 PROCEDURE create_participant
12   (p_validate                     in     number    default hr_api.g_false_num
13   ,p_effective_date               in     date
14   ,p_business_group_id            in     number
15   ,p_questionnaire_template_id    in     number    default null
16   ,p_participation_in_table       in     varchar2
17   ,p_participation_in_column      in     varchar2
18   ,p_participation_in_id          in     number
19   ,p_participation_status         in     varchar2  default null
20   ,p_participation_type           in     varchar2  default null
21   ,p_last_notified_date           in     date      default null
22   ,p_date_completed               in     date      default null
23   ,p_comments                     in     varchar2  default null
24   ,p_person_id                    in     number
25   ,p_attribute_category           in     varchar2  default null
26   ,p_attribute1                   in     varchar2  default null
27   ,p_attribute2                   in     varchar2  default null
28   ,p_attribute3                   in     varchar2  default null
29   ,p_attribute4                   in     varchar2  default null
30   ,p_attribute5                   in     varchar2  default null
31   ,p_attribute6                   in     varchar2  default null
32   ,p_attribute7                   in     varchar2  default null
33   ,p_attribute8                   in     varchar2  default null
34   ,p_attribute9                   in     varchar2  default null
35   ,p_attribute10                  in     varchar2  default null
36   ,p_attribute11                  in     varchar2  default null
37   ,p_attribute12                  in     varchar2  default null
38   ,p_attribute13                  in     varchar2  default null
39   ,p_attribute14                  in     varchar2  default null
40   ,p_attribute15                  in     varchar2  default null
41   ,p_attribute16                  in     varchar2  default null
42   ,p_attribute17                  in     varchar2  default null
43   ,p_attribute18                  in     varchar2  default null
44   ,p_attribute19                  in     varchar2  default null
45   ,p_attribute20                  in     varchar2  default null
46   ,p_participant_id               in	 number
47   ,p_participant_usage_status	  in 	 varchar2  default null
48   ,p_object_version_number           out nocopy number
49   ,p_return_status                   out nocopy varchar2
50   ) is
51   --
52   -- Variables for API Boolean parameters
53   l_validate                      boolean;
54   l_participant_id number;
55   --
56   -- Variables for IN/OUT parameters
57   --
58   -- Other variables
59   l_proc    varchar2(72) := g_package ||'create_participant';
60 Begin
61   hr_utility.set_location(' Entering:' || l_proc,10);
62   --
63   -- Issue a savepoint
64   --
65   savepoint create_participant_swi;
66   --
67   -- Initialise Multiple Message Detection
68   --
69   hr_multi_message.enable_message_list;
70   --
71   -- Remember IN OUT parameter IN values
72   --
73   --
74   -- Convert constant values to their corresponding boolean value
75   --
76   l_validate :=
77     hr_api.constant_to_boolean
78       (p_constant_value => p_validate);
79   --
80   -- Register Surrogate ID or user key values
81   --
82   per_par_ins.set_base_key_value
83         (p_participant_id => p_participant_id
84     );
85   --
86   -- Call API
87   --
88   hr_participants_api.create_participant
89     (p_validate                     => l_validate
90     ,p_effective_date               => p_effective_date
91     ,p_business_group_id            => p_business_group_id
92     ,p_questionnaire_template_id    => p_questionnaire_template_id
93     ,p_participation_in_table       => p_participation_in_table
94     ,p_participation_in_column      => p_participation_in_column
95     ,p_participation_in_id          => p_participation_in_id
96     ,p_participation_status         => p_participation_status
97     ,p_participation_type           => p_participation_type
98     ,p_last_notified_date           => p_last_notified_date
99     ,p_date_completed               => p_date_completed
100     ,p_comments                     => p_comments
101     ,p_person_id                    => p_person_id
102     ,p_attribute_category           => p_attribute_category
103     ,p_attribute1                   => p_attribute1
104     ,p_attribute2                   => p_attribute2
105     ,p_attribute3                   => p_attribute3
106     ,p_attribute4                   => p_attribute4
107     ,p_attribute5                   => p_attribute5
108     ,p_attribute6                   => p_attribute6
109     ,p_attribute7                   => p_attribute7
110     ,p_attribute8                   => p_attribute8
111     ,p_attribute9                   => p_attribute9
112     ,p_attribute10                  => p_attribute10
113     ,p_attribute11                  => p_attribute11
114     ,p_attribute12                  => p_attribute12
115     ,p_attribute13                  => p_attribute13
116     ,p_attribute14                  => p_attribute14
117     ,p_attribute15                  => p_attribute15
118     ,p_attribute16                  => p_attribute16
119     ,p_attribute17                  => p_attribute17
120     ,p_attribute18                  => p_attribute18
121     ,p_attribute19                  => p_attribute19
122     ,p_attribute20                  => p_attribute20
123     ,p_participant_id               => l_participant_id
124     ,p_object_version_number        => p_object_version_number
125     ,p_participant_usage_status		=> p_participant_usage_status
126     );
127   --
128   -- Convert API warning boolean parameter values to specific
129   -- messages and add them to Multiple Message List
130   --
131   --
132   -- Convert API non-warning boolean parameter values
133   --
134   --
135   -- Derive the API return status value based on whether
136   -- messages of any type exist in the Multiple Message List.
137   -- Also disable Multiple Message Detection.
138   --
139   p_return_status := hr_multi_message.get_return_status_disable;
140   hr_utility.set_location(' Leaving:' || l_proc,20);
141   --
142 exception
143   when hr_multi_message.error_message_exist then
144     --
145     -- Catch the Multiple Message List exception which
146     -- indicates API processing has been aborted because
147     -- at least one message exists in the list.
148     --
149     rollback to create_participant_swi;
150     --
151     -- Reset IN OUT parameters and set OUT parameters
152     --
153     p_object_version_number        := null;
154     p_return_status := hr_multi_message.get_return_status_disable;
155     hr_utility.set_location(' Leaving:' || l_proc, 30);
156   when others then
157     --
158     -- When Multiple Message Detection is enabled catch
159     -- any Application specific or other unexpected
160     -- exceptions.  Adding appropriate details to the
161     -- Multiple Message List.  Otherwise re-raise the
162     -- error.
163     --
164     rollback to create_participant_swi;
165     if hr_multi_message.unexpected_error_add(l_proc) then
166        hr_utility.set_location(' Leaving:' || l_proc,40);
167        raise;
168     end if;
169     --
170     -- Reset IN OUT and set OUT parameters
171     --
172     p_object_version_number        := null;
173     p_return_status := hr_multi_message.get_return_status_disable;
174     hr_utility.set_location(' Leaving:' || l_proc,50);
175 end create_participant;
176 -- ----------------------------------------------------------------------------
177 -- |--------------------------< delete_participant >--------------------------|
178 -- ----------------------------------------------------------------------------
179 PROCEDURE delete_participant
180   (p_validate                     in     number    default hr_api.g_false_num
181   ,p_participant_id               in     number
182   ,p_object_version_number        in     number
183   ,p_return_status                   out nocopy varchar2
184   ) is
185   --
186   -- Variables for API Boolean parameters
187   l_validate                      boolean;
188   --
189   -- Variables for IN/OUT parameters
190   --
191   -- Other variables
192   l_proc    varchar2(72) := g_package ||'delete_participant';
193 Begin
194   hr_utility.set_location(' Entering:' || l_proc,10);
195   --
196   -- Issue a savepoint
197   --
198   savepoint delete_participant_swi;
199   --
200   -- Initialise Multiple Message Detection
201   --
202   hr_multi_message.enable_message_list;
203   --
204   -- Remember IN OUT parameter IN values
205   --
206   --
207   -- Convert constant values to their corresponding boolean value
208   --
209   l_validate :=
210     hr_api.constant_to_boolean
211       (p_constant_value => p_validate);
212   --
213   -- Register Surrogate ID or user key values
214   --
215   --
216   -- Call API
217   --
218   hr_participants_api.delete_participant
219     (p_validate                     => l_validate
220     ,p_participant_id               => p_participant_id
221     ,p_object_version_number        => p_object_version_number
222     );
223   --
224   -- Convert API warning boolean parameter values to specific
225   -- messages and add them to Multiple Message List
226   --
227   --
228   -- Convert API non-warning boolean parameter values
229   --
230   --
231   -- Derive the API return status value based on whether
232   -- messages of any type exist in the Multiple Message List.
233   -- Also disable Multiple Message Detection.
234   --
235   p_return_status := hr_multi_message.get_return_status_disable;
236   hr_utility.set_location(' Leaving:' || l_proc,20);
237   --
238 exception
239   when hr_multi_message.error_message_exist then
240     --
241     -- Catch the Multiple Message List exception which
242     -- indicates API processing has been aborted because
243     -- at least one message exists in the list.
244     --
245     rollback to delete_participant_swi;
246     --
247     -- Reset IN OUT parameters and set OUT parameters
248     --
249     p_return_status := hr_multi_message.get_return_status_disable;
250     hr_utility.set_location(' Leaving:' || l_proc, 30);
251   when others then
252     --
253     -- When Multiple Message Detection is enabled catch
254     -- any Application specific or other unexpected
255     -- exceptions.  Adding appropriate details to the
256     -- Multiple Message List.  Otherwise re-raise the
257     -- error.
258     --
259     rollback to delete_participant_swi;
260     if hr_multi_message.unexpected_error_add(l_proc) then
261        hr_utility.set_location(' Leaving:' || l_proc,40);
262        raise;
263     end if;
264     --
265     -- Reset IN OUT and set OUT parameters
266     --
267     p_return_status := hr_multi_message.get_return_status_disable;
268     hr_utility.set_location(' Leaving:' || l_proc,50);
269 end delete_participant;
270 -- ----------------------------------------------------------------------------
271 -- |--------------------------< update_participant >--------------------------|
272 -- ----------------------------------------------------------------------------
273 PROCEDURE update_participant
274   (p_validate                     in     number    default hr_api.g_false_num
275   ,p_effective_date               in     date
276   ,p_participant_id               in     number
277   ,p_object_version_number        in out nocopy number
278   ,p_questionnaire_template_id    in     number    default hr_api.g_number
279   ,p_participation_status         in     varchar2  default hr_api.g_varchar2
280   ,p_participation_type           in     varchar2  default hr_api.g_varchar2
281   ,p_last_notified_date           in     date      default hr_api.g_date
282   ,p_date_completed               in     date      default hr_api.g_date
283   ,p_comments                     in     varchar2  default hr_api.g_varchar2
284   ,p_person_id                    in     number    default hr_api.g_number
285   ,p_attribute_category           in     varchar2  default hr_api.g_varchar2
286   ,p_attribute1                   in     varchar2  default hr_api.g_varchar2
287   ,p_attribute2                   in     varchar2  default hr_api.g_varchar2
288   ,p_attribute3                   in     varchar2  default hr_api.g_varchar2
289   ,p_attribute4                   in     varchar2  default hr_api.g_varchar2
290   ,p_attribute5                   in     varchar2  default hr_api.g_varchar2
291   ,p_attribute6                   in     varchar2  default hr_api.g_varchar2
292   ,p_attribute7                   in     varchar2  default hr_api.g_varchar2
293   ,p_attribute8                   in     varchar2  default hr_api.g_varchar2
294   ,p_attribute9                   in     varchar2  default hr_api.g_varchar2
295   ,p_attribute10                  in     varchar2  default hr_api.g_varchar2
296   ,p_attribute11                  in     varchar2  default hr_api.g_varchar2
297   ,p_attribute12                  in     varchar2  default hr_api.g_varchar2
298   ,p_attribute13                  in     varchar2  default hr_api.g_varchar2
299   ,p_attribute14                  in     varchar2  default hr_api.g_varchar2
300   ,p_attribute15                  in     varchar2  default hr_api.g_varchar2
301   ,p_attribute16                  in     varchar2  default hr_api.g_varchar2
302   ,p_attribute17                  in     varchar2  default hr_api.g_varchar2
303   ,p_attribute18                  in     varchar2  default hr_api.g_varchar2
304   ,p_attribute19                  in     varchar2  default hr_api.g_varchar2
305   ,p_attribute20                  in     varchar2  default hr_api.g_varchar2
306   ,p_participant_usage_status	    in 	   varchar2  default hr_api.g_varchar2
307   ,p_return_status                   out nocopy varchar2
308   ) is
309   --
310   -- Variables for API Boolean parameters
311   l_validate                      boolean;
312   --
313   -- Variables for IN/OUT parameters
314   l_object_version_number         number;
315   --
316   -- Other variables
317   l_proc    varchar2(72) := g_package ||'update_participant';
318 Begin
319   hr_utility.set_location(' Entering:' || l_proc,10);
320   --
321   -- Issue a savepoint
322   --
323   savepoint update_participant_swi;
324   --
325   -- Initialise Multiple Message Detection
326   --
327   hr_multi_message.enable_message_list;
328   --
329   -- Remember IN OUT parameter IN values
330   --
331   l_object_version_number         := p_object_version_number;
332   --
333   -- Convert constant values to their corresponding boolean value
334   --
335   l_validate :=
336     hr_api.constant_to_boolean
337       (p_constant_value => p_validate);
338   --
339   -- Register Surrogate ID or user key values
340   --
341   --
342   -- Call API
343   --
344   hr_participants_api.update_participant
345     (p_validate                     => l_validate
346     ,p_effective_date               => p_effective_date
347     ,p_participant_id               => p_participant_id
348     ,p_object_version_number        => p_object_version_number
349     ,p_questionnaire_template_id    => p_questionnaire_template_id
350     ,p_participation_status         => p_participation_status
351     ,p_participation_type           => p_participation_type
352     ,p_last_notified_date           => p_last_notified_date
353     ,p_date_completed               => p_date_completed
354     ,p_comments                     => p_comments
355     ,p_person_id                    => p_person_id
356     ,p_attribute_category           => p_attribute_category
357     ,p_attribute1                   => p_attribute1
358     ,p_attribute2                   => p_attribute2
359     ,p_attribute3                   => p_attribute3
360     ,p_attribute4                   => p_attribute4
361     ,p_attribute5                   => p_attribute5
362     ,p_attribute6                   => p_attribute6
363     ,p_attribute7                   => p_attribute7
364     ,p_attribute8                   => p_attribute8
365     ,p_attribute9                   => p_attribute9
366     ,p_attribute10                  => p_attribute10
367     ,p_attribute11                  => p_attribute11
368     ,p_attribute12                  => p_attribute12
369     ,p_attribute13                  => p_attribute13
370     ,p_attribute14                  => p_attribute14
371     ,p_attribute15                  => p_attribute15
372     ,p_attribute16                  => p_attribute16
373     ,p_attribute17                  => p_attribute17
374     ,p_attribute18                  => p_attribute18
375     ,p_attribute19                  => p_attribute19
376     ,p_attribute20                  => p_attribute20
377     ,p_participant_usage_status	  	=> p_participant_usage_status
378     );
379   --
380   -- Convert API warning boolean parameter values to specific
381   -- messages and add them to Multiple Message List
382   --
383   --
384   -- Convert API non-warning boolean parameter values
385   --
386   --
387   -- Derive the API return status value based on whether
388   -- messages of any type exist in the Multiple Message List.
389   -- Also disable Multiple Message Detection.
390   --
391   p_return_status := hr_multi_message.get_return_status_disable;
392   hr_utility.set_location(' Leaving:' || l_proc,20);
393   --
394 exception
395   when hr_multi_message.error_message_exist then
396     --
397     -- Catch the Multiple Message List exception which
398     -- indicates API processing has been aborted because
399     -- at least one message exists in the list.
400     --
401     rollback to update_participant_swi;
402     --
403     -- Reset IN OUT parameters and set OUT parameters
404     --
405     p_object_version_number        := l_object_version_number;
406     p_return_status := hr_multi_message.get_return_status_disable;
407     hr_utility.set_location(' Leaving:' || l_proc, 30);
408   when others then
409     --
410     -- When Multiple Message Detection is enabled catch
411     -- any Application specific or other unexpected
412     -- exceptions.  Adding appropriate details to the
413     -- Multiple Message List.  Otherwise re-raise the
414     -- error.
415     --
416     rollback to update_participant_swi;
417     if hr_multi_message.unexpected_error_add(l_proc) then
418        hr_utility.set_location(' Leaving:' || l_proc,40);
419        raise;
420     end if;
421     --
422     -- Reset IN OUT and set OUT parameters
423     --
424     p_object_version_number        := l_object_version_number;
425     p_return_status := hr_multi_message.get_return_status_disable;
426     hr_utility.set_location(' Leaving:' || l_proc,50);
427 end update_participant;
428 
429 -- ----------------------------------------------------------------------------
430 -- |---------------------------< process_api >--------------------------------|
431 -- ----------------------------------------------------------------------------
432 
433 Procedure process_api
434 ( p_document            in         CLOB
435  ,p_return_status       out nocopy VARCHAR2
436  ,p_validate            in         number    default hr_api.g_false_num
437  ,p_effective_date      in         date      default null
438 )
439 IS
440    l_postState VARCHAR2(2);
441    l_return_status VARCHAR2(1);
442    l_object_version_number number;
443    l_commitElement xmldom.DOMElement;
444    l_parser xmlparser.Parser;
445    l_CommitNode xmldom.DOMNode;
446    l_proc    varchar2(72) := g_package || 'process_api';
447 
448 BEGIN
449 
450    hr_utility.set_location(' Entering:' || l_proc,10);
451    hr_utility.set_location(' CLOB --> xmldom.DOMNode:' || l_proc,15);
452 
453    l_parser      := xmlparser.newParser;
454    xmlparser.ParseCLOB(l_parser,p_document);
455    l_CommitNode  := xmldom.makeNode(xmldom.getDocumentElement(xmlparser.getDocument(l_parser)));
456 
457    hr_utility.set_location('Extracting the PostState:' || l_proc,20);
458 
459    l_commitElement := xmldom.makeElement(l_CommitNode);
460    l_postState := xmldom.getAttribute(l_commitElement, 'PS');
461    l_object_version_number := hr_transaction_swi.getNumberValue(l_CommitNode,'ObjectVersionNumber');
462 
463    if l_postState = '0' then
464 
465        create_participant
466       ( p_validate                     => p_validate
467        ,p_effective_date               => p_effective_date
468        ,p_business_group_id            => hr_transaction_swi.getNumberValue(l_CommitNode,'BusinessGroupId',null)
469        ,p_questionnaire_template_id    => hr_transaction_swi.getNumberValue(l_CommitNode,'QuestionnaireTemplateId',null)
470        ,p_participation_in_table       => hr_transaction_swi.getVarchar2Value(l_CommitNode,'ParticipationInTable',null)
471        ,p_participation_in_column      => hr_transaction_swi.getVarchar2Value(l_CommitNode,'ParticipationInColumn',null)
472        ,p_participation_in_id          => hr_transaction_swi.getNumberValue(l_CommitNode,'ParticipationInId',null)
473        ,p_participation_status         => hr_transaction_swi.getVarchar2Value(l_CommitNode,'ParticipationStatus',null)
474        ,p_participation_type           => hr_transaction_swi.getVarchar2Value(l_CommitNode,'ParticipationType',null)
475        ,p_last_notified_date           => hr_transaction_swi.getDateValue(l_CommitNode,'LastNotifiedDate',null)
476        ,p_date_completed               => hr_transaction_swi.getDateValue(l_CommitNode,'DateCompleted',null)
477        ,p_comments                     => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Comments',null)
478        ,p_person_id                    => hr_transaction_swi.getNumberValue(l_CommitNode,'PersonId',null)
479        ,p_attribute_category           => hr_transaction_swi.getVarchar2Value(l_CommitNode,'AttributeCategory',null)
480        ,p_attribute1                   => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute1',null)
481        ,p_attribute2                   => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute2',null)
482        ,p_attribute3                   => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute3',null)
483        ,p_attribute4                   => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute4',null)
484        ,p_attribute5                   => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute5',null)
485        ,p_attribute6                   => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute6',null)
486        ,p_attribute7                   => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute7',null)
487        ,p_attribute8                   => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute8',null)
488        ,p_attribute9                   => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute9',null)
489        ,p_attribute10                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute10',null)
490        ,p_attribute11                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute11',null)
491        ,p_attribute12                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute12',null)
492        ,p_attribute13                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute13',null)
493        ,p_attribute14                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute14',null)
494        ,p_attribute15                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute15',null)
495        ,p_attribute16                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute16',null)
496        ,p_attribute17                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute17',null)
497        ,p_attribute18                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute18',null)
498        ,p_attribute19                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute19',null)
499        ,p_attribute20                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute20',null)
500        ,p_participant_id               => hr_transaction_swi.getNumberValue(l_CommitNode,'ParticipantId',null)
501        ,p_object_version_number        => l_object_version_number
502        ,p_return_status                => l_return_status
503       );
504 
505    elsif l_postState = '2' then
506 
507        update_participant
508       ( p_validate                     => p_validate
509        ,p_effective_date               => p_effective_date
510        ,p_participant_id               => hr_transaction_swi.getNumberValue(l_CommitNode,'ParticipantId')
511        ,p_object_version_number        => l_object_version_number
512        ,p_questionnaire_template_id    => hr_transaction_swi.getNumberValue(l_CommitNode,'QuestionnaireTemplateId')
513        ,p_participation_status         => hr_transaction_swi.getVarchar2Value(l_CommitNode,'ParticipationStatus')
514        ,p_participation_type           => hr_transaction_swi.getVarchar2Value(l_CommitNode,'ParticipationType')
515        ,p_last_notified_date           => hr_transaction_swi.getDateValue(l_CommitNode,'LastNotifiedDate')
516        ,p_date_completed               => hr_transaction_swi.getDateValue(l_CommitNode,'DateCompleted')
517        ,p_comments                     => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Comments')
518        ,p_person_id                    => hr_transaction_swi.getNumberValue(l_CommitNode,'PersonId')
519        ,p_attribute_category           => hr_transaction_swi.getVarchar2Value(l_CommitNode,'AttributeCategory')
520        ,p_attribute1                   => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute1')
521        ,p_attribute2                   => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute2')
522        ,p_attribute3                   => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute3')
523        ,p_attribute4                   => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute4')
524        ,p_attribute5                   => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute5')
525        ,p_attribute6                   => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute6')
526        ,p_attribute7                   => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute7')
527        ,p_attribute8                   => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute8')
528        ,p_attribute9                   => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute9')
529        ,p_attribute10                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute10')
530        ,p_attribute11                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute11')
531        ,p_attribute12                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute12')
532        ,p_attribute13                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute13')
533        ,p_attribute14                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute14')
534        ,p_attribute15                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute15')
535        ,p_attribute16                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute16')
536        ,p_attribute17                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute17')
537        ,p_attribute18                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute18')
538        ,p_attribute19                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute19')
539        ,p_attribute20                  => hr_transaction_swi.getVarchar2Value(l_CommitNode,'Attribute20')
540        ,p_return_status                => l_return_status
541       );
542 
543    elsif l_postState = '3' then
544 
545        delete_participant
546       ( p_validate                     => p_validate
547        ,p_participant_id               => hr_transaction_swi.getNumberValue(l_CommitNode,'ParticipantId')
548        ,p_object_version_number        => l_object_version_number
549        ,p_return_status                => l_return_status
550       );
551 
552       p_return_status := l_return_status;
553 
554    end if;
555 
556    hr_utility.set_location('Exiting:' || l_proc,40);
557 
558 END process_api;
559 
560 end hr_participants_swi;