DBA Data[Home] [Help]

PACKAGE BODY: APPS.PER_REQUISITIONS_SWI

Source


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