DBA Data[Home] [Help]

PACKAGE BODY: APPS.PQH_ROUTING_HISTORY_API

Source


1 Package Body pqh_routing_history_api as
2 /* $Header: pqrhtapi.pkb 115.6 2002/12/06 18:07:57 rpasapul noship $ */
3 --
4 -- Package Variables
5 --
6 g_package  varchar2(33) := '  pqh_routing_history_api.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |------------------------< create_routing_history >----------------------|
10 -- ----------------------------------------------------------------------------
11 --
12 procedure create_routing_history
13   (p_validate                       in  boolean   default false
14   ,p_routing_history_id             out nocopy number
15   ,p_approval_cd                    in  varchar2  default null
16   ,p_comments                       in  varchar2  default null
17   ,p_forwarded_by_assignment_id     in  number    default null
18   ,p_forwarded_by_member_id         in  number    default null
19   ,p_forwarded_by_position_id       in  number    default null
20   ,p_forwarded_by_user_id           in  number    default null
21   ,p_forwarded_by_role_id           in  number    default null
22   ,p_forwarded_to_assignment_id     in  number    default null
23   ,p_forwarded_to_member_id         in  number    default null
24   ,p_forwarded_to_position_id       in  number    default null
25   ,p_forwarded_to_user_id           in  number    default null
26   ,p_forwarded_to_role_id           in  number    default null
27   ,p_notification_date              in  date      default null
28   ,p_pos_structure_version_id       in  number    default null
29   ,p_routing_category_id            in  number    default null
30   ,p_transaction_category_id        in  number    default null
31   ,p_transaction_id                 in  number    default null
32   ,p_user_action_cd                 in  varchar2  default null
33   ,p_object_version_number          out nocopy number
34   ,p_from_range_name                in  varchar2  default null
35   ,p_to_range_name                  in  varchar2  default null
36   ,p_list_range_name                in  varchar2  default null
37   ,p_effective_date                 in  date
38   ) is
39   --
40   -- Declare cursors and local variables
41   --
42   l_routing_history_id pqh_routing_history.routing_history_id%TYPE;
43   l_proc varchar2(72) := g_package||'create_routing_history';
44   l_object_version_number pqh_routing_history.object_version_number%TYPE;
45   --
46 begin
47   --
48   hr_utility.set_location('Entering:'|| l_proc, 10);
49   --
50   -- Issue a savepoint if operating in validation only mode
51   --
52   savepoint create_routing_history;
53   --
54   hr_utility.set_location(l_proc, 20);
55   --
56   -- Process Logic
57   --
58   begin
59     --
60     -- Start of API User Hook for the before hook of create_routing_history
61     --
62     pqh_routing_history_bk1.create_routing_history_b
63       (
64        p_approval_cd                    =>  p_approval_cd
65       ,p_comments                       =>  p_comments
66       ,p_forwarded_by_assignment_id     =>  p_forwarded_by_assignment_id
67       ,p_forwarded_by_member_id         =>  p_forwarded_by_member_id
68       ,p_forwarded_by_position_id       =>  p_forwarded_by_position_id
69       ,p_forwarded_by_user_id           =>  p_forwarded_by_user_id
70       ,p_forwarded_by_role_id           =>  p_forwarded_by_role_id
71       ,p_forwarded_to_assignment_id     =>  p_forwarded_to_assignment_id
72       ,p_forwarded_to_member_id         =>  p_forwarded_to_member_id
73       ,p_forwarded_to_position_id       =>  p_forwarded_to_position_id
74       ,p_forwarded_to_user_id           =>  p_forwarded_to_user_id
75       ,p_forwarded_to_role_id           =>  p_forwarded_to_role_id
76       ,p_notification_date              =>  p_notification_date
77       ,p_pos_structure_version_id       =>  p_pos_structure_version_id
78       ,p_routing_category_id            =>  p_routing_category_id
79       ,p_transaction_category_id        =>  p_transaction_category_id
80       ,p_transaction_id                 =>  p_transaction_id
81       ,p_user_action_cd                 =>  p_user_action_cd
82       ,p_from_range_name                =>  p_from_range_name
83       ,p_to_range_name                  =>  p_to_range_name
84       ,p_list_range_name                =>  p_list_range_name
85       ,p_effective_date                 => trunc(p_effective_date)
86       );
87   exception
88     when hr_api.cannot_find_prog_unit then
89       hr_api.cannot_find_prog_unit_error
90         (
91          p_module_name => 'CREATE_ROUTING_HISTORY'
92         ,p_hook_type   => 'BP'
93         );
94     --
95     -- End of API User Hook for the before hook of create_routing_history
96     --
97   end;
98   --
99   pqh_rht_ins.ins
100     (
101      p_routing_history_id            => l_routing_history_id
102     ,p_approval_cd                   => p_approval_cd
103     ,p_comments                      => p_comments
104     ,p_forwarded_by_assignment_id    => p_forwarded_by_assignment_id
105     ,p_forwarded_by_member_id        => p_forwarded_by_member_id
106     ,p_forwarded_by_position_id      => p_forwarded_by_position_id
107     ,p_forwarded_by_user_id          => p_forwarded_by_user_id
108     ,p_forwarded_by_role_id          => p_forwarded_by_role_id
109     ,p_forwarded_to_assignment_id    => p_forwarded_to_assignment_id
110     ,p_forwarded_to_member_id        => p_forwarded_to_member_id
111     ,p_forwarded_to_position_id      => p_forwarded_to_position_id
112     ,p_forwarded_to_user_id          => p_forwarded_to_user_id
113     ,p_forwarded_to_role_id          => p_forwarded_to_role_id
114     ,p_notification_date             => p_notification_date
115     ,p_pos_structure_version_id      => p_pos_structure_version_id
116     ,p_routing_category_id           => p_routing_category_id
117     ,p_transaction_category_id       => p_transaction_category_id
118     ,p_transaction_id                => p_transaction_id
119     ,p_user_action_cd                => p_user_action_cd
120     ,p_object_version_number         => l_object_version_number
121     ,p_from_range_name               => p_from_range_name
122     ,p_to_range_name                 => p_to_range_name
123     ,p_list_range_name               => p_list_range_name
124     ,p_effective_date                => trunc(p_effective_date)
125     );
126   --
127   begin
128     --
129     -- Start of API User Hook for the after hook of create_routing_history
130     --
131     pqh_routing_history_bk1.create_routing_history_a
132       (
133        p_routing_history_id             =>  l_routing_history_id
134       ,p_approval_cd                    =>  p_approval_cd
135       ,p_comments                       =>  p_comments
136       ,p_forwarded_by_assignment_id     =>  p_forwarded_by_assignment_id
137       ,p_forwarded_by_member_id         =>  p_forwarded_by_member_id
138       ,p_forwarded_by_position_id       =>  p_forwarded_by_position_id
139       ,p_forwarded_by_user_id           =>  p_forwarded_by_user_id
140       ,p_forwarded_by_role_id           =>  p_forwarded_by_role_id
141       ,p_forwarded_to_assignment_id     =>  p_forwarded_to_assignment_id
142       ,p_forwarded_to_member_id         =>  p_forwarded_to_member_id
143       ,p_forwarded_to_position_id       =>  p_forwarded_to_position_id
144       ,p_forwarded_to_user_id           =>  p_forwarded_to_user_id
145       ,p_forwarded_to_role_id           =>  p_forwarded_to_role_id
146       ,p_notification_date              =>  p_notification_date
147       ,p_pos_structure_version_id       =>  p_pos_structure_version_id
148       ,p_routing_category_id            =>  p_routing_category_id
149       ,p_transaction_category_id        =>  p_transaction_category_id
150       ,p_transaction_id                 =>  p_transaction_id
151       ,p_user_action_cd                 =>  p_user_action_cd
152       ,p_object_version_number          =>  l_object_version_number
153       ,p_from_range_name                =>  p_from_range_name
154       ,p_to_range_name                  =>  p_to_range_name
155       ,p_list_range_name                =>  p_list_range_name
156       ,p_effective_date                 => trunc(p_effective_date)
157       );
158   exception
159     when hr_api.cannot_find_prog_unit then
160       hr_api.cannot_find_prog_unit_error
161         (p_module_name => 'CREATE_ROUTING_HISTORY'
162         ,p_hook_type   => 'AP'
163         );
164     --
165     -- End of API User Hook for the after hook of create_routing_history
166     --
167   end;
168   --
169   hr_utility.set_location(l_proc, 60);
170   --
171   -- When in validation only mode raise the Validate_Enabled exception
172   --
173   if p_validate then
174     raise hr_api.validate_enabled;
175   end if;
176   --
177   -- Set all output arguments
178   --
179   p_routing_history_id := l_routing_history_id;
180   p_object_version_number := l_object_version_number;
181   --
182   hr_utility.set_location(' Leaving:'||l_proc, 70);
183   --
184 exception
185   --
186   when hr_api.validate_enabled then
187     --
188     -- As the Validate_Enabled exception has been raised
189     -- we must rollback to the savepoint
190     --
191     ROLLBACK TO create_routing_history;
192     --
193     -- Only set output warning arguments
194     -- (Any key or derived arguments must be set to null
195     -- when validation only mode is being used.)
196     --
197     p_routing_history_id := null;
198     p_object_version_number  := null;
199     hr_utility.set_location(' Leaving:'||l_proc, 80);
200     --
201   when others then
202       p_routing_history_id := null;
203     p_object_version_number  := null;
204     --
205     -- A validation or unexpected error has occured
206     --
207     ROLLBACK TO create_routing_history;
208     raise;
209     --
210 end create_routing_history;
211 -- ----------------------------------------------------------------------------
212 -- |------------------------< update_routing_history >--- ------------------|
213 -- ----------------------------------------------------------------------------
214 --
215 procedure update_routing_history
216   (p_validate                       in  boolean   default false
217   ,p_routing_history_id             in  number
218   ,p_approval_cd                    in  varchar2  default hr_api.g_varchar2
219   ,p_comments                       in  varchar2  default hr_api.g_varchar2
220   ,p_forwarded_by_assignment_id     in  number    default hr_api.g_number
221   ,p_forwarded_by_member_id         in  number    default hr_api.g_number
222   ,p_forwarded_by_position_id       in  number    default hr_api.g_number
223   ,p_forwarded_by_user_id           in  number    default hr_api.g_number
224   ,p_forwarded_by_role_id           in  number    default hr_api.g_number
225   ,p_forwarded_to_assignment_id     in  number    default hr_api.g_number
226   ,p_forwarded_to_member_id         in  number    default hr_api.g_number
227   ,p_forwarded_to_position_id       in  number    default hr_api.g_number
228   ,p_forwarded_to_user_id           in  number    default hr_api.g_number
229   ,p_forwarded_to_role_id           in  number    default hr_api.g_number
230   ,p_notification_date              in  date      default hr_api.g_date
231   ,p_pos_structure_version_id       in  number    default hr_api.g_number
232   ,p_routing_category_id            in  number    default hr_api.g_number
233   ,p_transaction_category_id        in  number    default hr_api.g_number
234   ,p_transaction_id                 in  number    default hr_api.g_number
235   ,p_user_action_cd                 in  varchar2  default hr_api.g_varchar2
236   ,p_object_version_number          in out nocopy number
237   ,p_from_range_name                in  varchar2  default hr_api.g_varchar2
238   ,p_to_range_name                  in  varchar2  default hr_api.g_varchar2
239   ,p_list_range_name                in  varchar2  default hr_api.g_varchar2
240   ,p_effective_date                 in  date
241   ) is
242   --
243   -- Declare cursors and local variables
244   --
245   l_proc varchar2(72) := g_package||'update_routing_history';
246   l_object_version_number pqh_routing_history.object_version_number%TYPE;
247   --
248 begin
249   --
250   hr_utility.set_location('Entering:'|| l_proc, 10);
251   --
252   -- Issue a savepoint if operating in validation only mode
253   --
254   savepoint update_routing_history;
255   --
256   hr_utility.set_location(l_proc, 20);
257   --
258   -- Process Logic
259   --
260   l_object_version_number := p_object_version_number;
261   --
262   begin
263     --
264     -- Start of API User Hook for the before hook of update_routing_history
265     --
266     pqh_routing_history_bk2.update_routing_history_b
267       (
268        p_routing_history_id             =>  p_routing_history_id
269       ,p_approval_cd                    =>  p_approval_cd
270       ,p_comments                       =>  p_comments
271       ,p_forwarded_by_assignment_id     =>  p_forwarded_by_assignment_id
272       ,p_forwarded_by_member_id         =>  p_forwarded_by_member_id
273       ,p_forwarded_by_position_id       =>  p_forwarded_by_position_id
274       ,p_forwarded_by_user_id           =>  p_forwarded_by_user_id
275       ,p_forwarded_by_role_id           =>  p_forwarded_by_role_id
276       ,p_forwarded_to_assignment_id     =>  p_forwarded_to_assignment_id
277       ,p_forwarded_to_member_id         =>  p_forwarded_to_member_id
278       ,p_forwarded_to_position_id       =>  p_forwarded_to_position_id
279       ,p_forwarded_to_user_id           =>  p_forwarded_to_user_id
280       ,p_forwarded_to_role_id           =>  p_forwarded_to_role_id
281       ,p_notification_date              =>  p_notification_date
282       ,p_pos_structure_version_id       =>  p_pos_structure_version_id
283       ,p_routing_category_id            =>  p_routing_category_id
284       ,p_transaction_category_id        =>  p_transaction_category_id
285       ,p_transaction_id                 =>  p_transaction_id
286       ,p_user_action_cd                 =>  p_user_action_cd
287       ,p_object_version_number          =>  p_object_version_number
288       ,p_from_range_name                =>  p_from_range_name
289       ,p_to_range_name                  =>  p_to_range_name
290       ,p_list_range_name                =>  p_list_range_name
291     ,p_effective_date                 => trunc(p_effective_date)
292       );
293   exception
294     when hr_api.cannot_find_prog_unit then
295       hr_api.cannot_find_prog_unit_error
296         (p_module_name => 'UPDATE_ROUTING_HISTORY'
297         ,p_hook_type   => 'BP'
298         );
299     --
300     -- End of API User Hook for the before hook of update_routing_history
301     --
302   end;
303   --
304   pqh_rht_upd.upd
305     (
306      p_routing_history_id            => p_routing_history_id
307     ,p_approval_cd                   => p_approval_cd
308     ,p_comments                      => p_comments
309     ,p_forwarded_by_assignment_id    => p_forwarded_by_assignment_id
310     ,p_forwarded_by_member_id        => p_forwarded_by_member_id
311     ,p_forwarded_by_position_id      => p_forwarded_by_position_id
312     ,p_forwarded_by_user_id          => p_forwarded_by_user_id
313     ,p_forwarded_by_role_id          => p_forwarded_by_role_id
314     ,p_forwarded_to_assignment_id    => p_forwarded_to_assignment_id
315     ,p_forwarded_to_member_id        => p_forwarded_to_member_id
316     ,p_forwarded_to_position_id      => p_forwarded_to_position_id
317     ,p_forwarded_to_user_id          => p_forwarded_to_user_id
318     ,p_forwarded_to_role_id          => p_forwarded_to_role_id
319     ,p_notification_date             => p_notification_date
320     ,p_pos_structure_version_id      => p_pos_structure_version_id
321     ,p_routing_category_id           => p_routing_category_id
322     ,p_transaction_category_id       => p_transaction_category_id
323     ,p_transaction_id                => p_transaction_id
324     ,p_user_action_cd                => p_user_action_cd
325     ,p_object_version_number         => l_object_version_number
326     ,p_from_range_name               => p_from_range_name
327     ,p_to_range_name                 => p_to_range_name
328     ,p_list_range_name               => p_list_range_name
329     ,p_effective_date                => trunc(p_effective_date)
330     );
331   --
332   begin
333     --
334     -- Start of API User Hook for the after hook of update_routing_history
335     --
336     pqh_routing_history_bk2.update_routing_history_a
337       (
338        p_routing_history_id             =>  p_routing_history_id
339       ,p_approval_cd                    =>  p_approval_cd
340       ,p_comments                       =>  p_comments
341       ,p_forwarded_by_assignment_id     =>  p_forwarded_by_assignment_id
342       ,p_forwarded_by_member_id         =>  p_forwarded_by_member_id
343       ,p_forwarded_by_position_id       =>  p_forwarded_by_position_id
344       ,p_forwarded_by_user_id           =>  p_forwarded_by_user_id
345       ,p_forwarded_by_role_id           =>  p_forwarded_by_role_id
346       ,p_forwarded_to_assignment_id     =>  p_forwarded_to_assignment_id
347       ,p_forwarded_to_member_id         =>  p_forwarded_to_member_id
348       ,p_forwarded_to_position_id       =>  p_forwarded_to_position_id
349       ,p_forwarded_to_user_id           =>  p_forwarded_to_user_id
350       ,p_forwarded_to_role_id           =>  p_forwarded_to_role_id
351       ,p_notification_date              =>  p_notification_date
352       ,p_pos_structure_version_id       =>  p_pos_structure_version_id
353       ,p_routing_category_id            =>  p_routing_category_id
354       ,p_transaction_category_id        =>  p_transaction_category_id
355       ,p_transaction_id                 =>  p_transaction_id
356       ,p_user_action_cd                 =>  p_user_action_cd
357       ,p_object_version_number          =>  l_object_version_number
358       ,p_from_range_name                =>  p_from_range_name
359       ,p_to_range_name                  =>  p_to_range_name
360       ,p_list_range_name                =>  p_list_range_name
361       ,p_effective_date                => trunc(p_effective_date)
362       );
363   exception
364     when hr_api.cannot_find_prog_unit then
365       hr_api.cannot_find_prog_unit_error
366         (p_module_name => 'UPDATE_ROUTING_HISTORY'
367         ,p_hook_type   => 'AP'
368         );
369     --
370     -- End of API User Hook for the after hook of update_routing_history
371     --
372   end;
373   --
374   hr_utility.set_location(l_proc, 60);
375   --
376   -- When in validation only mode raise the Validate_Enabled exception
377   --
378   if p_validate then
379     raise hr_api.validate_enabled;
380   end if;
381   --
382   -- Set all output arguments
383   --
384   p_object_version_number := l_object_version_number;
385   --
386   hr_utility.set_location(' Leaving:'||l_proc, 70);
387   --
388 exception
389   --
390   when hr_api.validate_enabled then
391     --
392     -- As the Validate_Enabled exception has been raised
393     -- we must rollback to the savepoint
394     --
395     ROLLBACK TO update_routing_history;
396     --
397     -- Only set output warning arguments
398     -- (Any key or derived arguments must be set to null
399     -- when validation only mode is being used.)
400     --
401     hr_utility.set_location(' Leaving:'||l_proc, 80);
402     --
403   when others then
404     p_object_version_number := l_object_version_number;
405     --
406     -- A validation or unexpected error has occured
407     --
408     ROLLBACK TO update_routing_history;
409     raise;
410     --
411 end update_routing_history;
412 -- ----------------------------------------------------------------------------
413 -- |------------------------< delete_routing_history >----------------------|
414 -- ----------------------------------------------------------------------------
415 --
416 procedure delete_routing_history
417   (p_validate                       in  boolean  default false
418   ,p_routing_history_id             in  number
419   ,p_object_version_number          in out nocopy number
420   ,p_effective_date                 in  date
421   ) is
422   --
423   -- Declare cursors and local variables
424   --
425   l_proc varchar2(72) := g_package||'update_routing_history';
426   l_object_version_number pqh_routing_history.object_version_number%TYPE;
427   --
428 begin
429   --
430   hr_utility.set_location('Entering:'|| l_proc, 10);
431   --
432   -- Issue a savepoint if operating in validation only mode
433   --
434   savepoint delete_routing_history;
435   --
436   hr_utility.set_location(l_proc, 20);
437   --
438   -- Process Logic
439   --
440   l_object_version_number := p_object_version_number;
441   --
442   --
443   begin
444     --
445     -- Start of API User Hook for the before hook of delete_routing_history
446     --
447     pqh_routing_history_bk3.delete_routing_history_b
448       (
449        p_routing_history_id             =>  p_routing_history_id
450       ,p_object_version_number          =>  p_object_version_number
451     ,p_effective_date                      => trunc(p_effective_date)
452       );
453   exception
454     when hr_api.cannot_find_prog_unit then
455       hr_api.cannot_find_prog_unit_error
456         (p_module_name => 'DELETE_ROUTING_HISTORY'
457         ,p_hook_type   => 'BP'
458         );
459     --
460     -- End of API User Hook for the before hook of delete_routing_history
461     --
462   end;
463   --
464   --
465   -- DELETE rows from pqh_routing_hist_attribs
466   --
467     delete from pqh_routing_hist_attribs
468     where routing_history_id = p_routing_history_id;
469   --
470   --
471   --
472   --
473   pqh_rht_del.del
474     (
475      p_routing_history_id            => p_routing_history_id
476     ,p_object_version_number         => l_object_version_number
477     ,p_effective_date                => p_effective_date
478     );
479   --
480   begin
481     --
482     -- Start of API User Hook for the after hook of delete_routing_history
483     --
484     pqh_routing_history_bk3.delete_routing_history_a
485       (
486        p_routing_history_id             =>  p_routing_history_id
487       ,p_object_version_number          =>  l_object_version_number
488     ,p_effective_date                      => trunc(p_effective_date)
489       );
490   exception
491     when hr_api.cannot_find_prog_unit then
492       hr_api.cannot_find_prog_unit_error
493         (p_module_name => 'DELETE_ROUTING_HISTORY'
494         ,p_hook_type   => 'AP'
495         );
496     --
497     -- End of API User Hook for the after hook of delete_routing_history
498     --
499   end;
500   --
501   hr_utility.set_location(l_proc, 60);
502   --
503   -- When in validation only mode raise the Validate_Enabled exception
504   --
505   if p_validate then
506     raise hr_api.validate_enabled;
507   end if;
508   --
509   hr_utility.set_location(' Leaving:'||l_proc, 70);
510   --
511 exception
512   --
513   when hr_api.validate_enabled then
514     --
515     -- As the Validate_Enabled exception has been raised
516     -- we must rollback to the savepoint
517     --
518     ROLLBACK TO delete_routing_history;
519     --
520     -- Only set output warning arguments
521     -- (Any key or derived arguments must be set to null
522     -- when validation only mode is being used.)
523     --
524     --
525   when others then
526     --
527     -- A validation or unexpected error has occured
528     --
529     ROLLBACK TO delete_routing_history;
530     raise;
531     --
532 end delete_routing_history;
533 --
534 -- ----------------------------------------------------------------------------
535 -- |-------------------------------< lck >------------------------------------|
536 -- ----------------------------------------------------------------------------
537 --
538 procedure lck
539   (
540    p_routing_history_id                   in     number
541   ,p_object_version_number          in     number
542   ) is
543   --
544   --
545   -- Declare cursors and local variables
546   --
547   l_proc varchar2(72) := g_package||'lck';
548   --
549 begin
550   --
551   hr_utility.set_location('Entering:'|| l_proc, 10);
552   --
553   pqh_rht_shd.lck
554     (
555       p_routing_history_id                 => p_routing_history_id
556      ,p_object_version_number      => p_object_version_number
557     );
558   --
559   hr_utility.set_location(' Leaving:'||l_proc, 70);
560   --
561 end lck;
562 --
563 --
564 -- ----------------------------------------------------------------------------
565 -- -------------------< create_routing_history_bp > ---------------------------
566 -- ----------------------------------------------------------------------------
567 --
568 procedure create_routing_history_bp
569 (
570    p_validate                       in boolean    default false
571   ,p_routing_history_id             out nocopy number
572   ,p_approval_cd                    in  varchar2  default null
573   ,p_comments                       in  varchar2  default null
574   ,p_forwarded_by_assignment_id     in  number    default null
575   ,p_forwarded_by_member_id         in  number    default null
576   ,p_forwarded_by_position_id       in  number    default null
577   ,p_forwarded_by_user_id           in  number    default null
578   ,p_forwarded_by_role_id           in  number    default null
579   ,p_forwarded_to_assignment_id     in  number    default null
580   ,p_forwarded_to_member_id         in  number    default null
581   ,p_forwarded_to_position_id       in  number    default null
582   ,p_forwarded_to_user_id           in  number    default null
583   ,p_forwarded_to_role_id           in  number    default null
584   ,p_notification_date              in  date      default null
585   ,p_pos_structure_version_id       in  number    default null
586   ,p_routing_category_id            in  number    default null
587   ,p_transaction_category_id        in  number    default null
588   ,p_transaction_id                 in  number    default null
589   ,p_user_action_cd                 in  varchar2  default null
590   ,p_object_version_number          out nocopy number
591   ,p_from_range_name                in  varchar2  default null
592   ,p_to_range_name                  in  varchar2  default null
593   ,p_list_range_name                in  varchar2  default null
594   ,p_effective_date                 in  date
595   ,p_rha_tab                        in t_rha_tab
596  ) is
597 /*
598   This procedure will call the create_routing_history API and then insert records into
599   pqh_routing_hist_attribs by calling create_routing_hist_attrib API in loop
600 */
601 
602 
603 l_proc                         varchar2(72) := g_package||'create_routing_history_bp';
604 l_routing_history_id           pqh_routing_history.routing_history_id%TYPE;
605 l_object_version_number        pqh_routing_history.object_version_number%TYPE;
606 l_routing_hist_attrib_id       pqh_routing_hist_attribs.routing_hist_attrib_id%TYPE;
607 
608 begin
609 
610 -- call the create_routing_history API
611 
612    create_routing_history
613 (
614    p_validate                       => p_validate
615   ,p_routing_history_id             => l_routing_history_id
616   ,p_approval_cd                    => p_approval_cd
617   ,p_comments                       => p_comments
618   ,p_forwarded_by_assignment_id     => p_forwarded_by_assignment_id
619   ,p_forwarded_by_member_id         => p_forwarded_by_member_id
620   ,p_forwarded_by_position_id       => p_forwarded_by_position_id
621   ,p_forwarded_by_user_id           => p_forwarded_by_user_id
622   ,p_forwarded_by_role_id           => p_forwarded_by_role_id
623   ,p_forwarded_to_assignment_id     => p_forwarded_to_assignment_id
624   ,p_forwarded_to_member_id         => p_forwarded_to_member_id
625   ,p_forwarded_to_position_id       => p_forwarded_to_position_id
626   ,p_forwarded_to_user_id           => p_forwarded_to_user_id
627   ,p_forwarded_to_role_id           => p_forwarded_to_role_id
628   ,p_notification_date              => p_notification_date
629   ,p_pos_structure_version_id       => p_pos_structure_version_id
630   ,p_routing_category_id            => p_routing_category_id
631   ,p_transaction_category_id        => p_transaction_category_id
632   ,p_transaction_id                 => p_transaction_id
633   ,p_user_action_cd                 => p_user_action_cd
634   ,p_object_version_number          => l_object_version_number
635   ,p_from_range_name                => p_from_range_name
636   ,p_to_range_name                  => p_to_range_name
637   ,p_list_range_name                => p_list_range_name
638   ,p_effective_date                 => p_effective_date
639 );
640 --
641 --  populate the OUT vairables of create_routing_history_bp
642 
643     p_routing_history_id    := l_routing_history_id;
644     p_object_version_number := l_object_version_number;
645 --
646 --
647 --     Call the pqh_routing_hist_attrib_api.create_routing_hist_attrib in LOOP
648 --
649 --
650 --
651 
652    FOR i in NVL(p_rha_tab.FIRST,0)..NVL(p_rha_tab.LAST,-1)
653      LOOP
654 
655         hr_utility.set_location(' Inserting Into pqh_routing_hist_attribs: '||l_proc, 5);
656 
657 
658 
659            pqh_routing_hist_attrib_api.create_routing_hist_attrib
660            (
661               p_validate                       => p_validate
662              ,p_routing_hist_attrib_id         => l_routing_hist_attrib_id
663              ,p_routing_history_id             => l_routing_history_id
664              ,p_attribute_id                   => p_rha_tab(i).attribute_id
665              ,p_from_char                      => p_rha_tab(i).from_char
666              ,p_from_date                      => p_rha_tab(i).from_date
667              ,p_from_number                    => p_rha_tab(i).from_number
668              ,p_to_char                        => p_rha_tab(i).to_char
669              ,p_to_date                        => p_rha_tab(i).to_date
670              ,p_to_number                      => p_rha_tab(i).to_number
671              ,p_object_version_number          => l_object_version_number
672              ,p_range_type_cd                  => p_rha_tab(i).range_type_cd
673              ,p_value_date                     => p_rha_tab(i).value_date
674              ,p_value_number                   => p_rha_tab(i).value_number
675              ,p_value_char                     => p_rha_tab(i).value_char
676              ,p_effective_date                 => p_effective_date
677             );
678 
679         hr_utility.set_location(' Done Inserting Into pqh_routing_hist_attribs: '||l_routing_hist_attrib_id, 7);
680 
681      END LOOP;
682 
683 
684 end create_routing_history_bp;
685 --
686 --
687 --
688 end pqh_routing_history_api;