DBA Data[Home] [Help]

PACKAGE BODY: APPS.IRC_JOB_BASKET_ITEMS_API

Source


1 Package Body irc_job_basket_items_api as
2 /* $Header: irjbiapi.pkb 120.0 2005/07/26 15:12:54 mbocutt noship $ */
3 --
4 -- Package Variables
5 --
6 g_package  varchar2(33) := 'irc_job_basket_items_api.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |-----------------------< create_job_basket_item >-------------------------|
10 -- ----------------------------------------------------------------------------
11 --
12 procedure create_job_basket_item
13   (p_validate                      in     boolean  default false
14   ,p_effective_date                in     date
15   ,p_recruitment_activity_id       in     number
16   ,p_person_id                     in     number
17   ,p_job_basket_item_id            out nocopy number
18   ,p_object_version_number         out nocopy number
19   ) is
20   --
21   -- Declare cursors and local variables
22   --
23 
24   l_proc                  varchar2(72) := g_package||'create_job_basket_item';
25   l_effective_date        date;
26   l_object_version_number irc_job_basket_items.object_version_number%type;
27   l_job_basket_item_id    number(15) default null;
28 begin
29   hr_utility.set_location('Entering:'|| l_proc, 10);
30   --
31   -- Issue a savepoint
32   --
33   savepoint create_job_basket_item;
34   --
35   -- Truncate the time portion from all IN date parameters
36   --
37   l_effective_date := trunc(p_effective_date);
38 
39   --
40   -- Call Before Process User Hook
41   --
42   begin
43     irc_job_basket_items_bk1.create_job_basket_item_b
44       (p_effective_date                => l_effective_date
45       ,p_recruitment_activity_id       => p_recruitment_activity_id
46       ,p_person_id                     => p_person_id
47       );
48   exception
49     when hr_api.cannot_find_prog_unit then
50       hr_api.cannot_find_prog_unit_error
51         (p_module_name => 'create_job_basket_item'
52         ,p_hook_type   => 'BP'
53         );
54   end;
55   --
56   -- Process Logic
57   --
58   irc_jbi_ins.ins
59     (p_effective_date               => l_effective_date
60     ,p_job_basket_item_id           => l_job_basket_item_id
61     ,p_person_id                    => p_person_id
62     ,p_recruitment_activity_id      => p_recruitment_activity_id
63     ,p_object_version_number        => l_object_version_number );
64 
65   --
66   -- Call After Process User Hook
67   --
68   begin
69     irc_job_basket_items_bk1.create_job_basket_item_a
70       (p_effective_date                => l_effective_date
71       ,p_object_version_number         => l_object_version_number
72       ,p_job_basket_item_id            => l_job_basket_item_id
73       ,p_recruitment_activity_id       => p_recruitment_activity_id
74       ,p_person_id                     => p_person_id
75       );
76   exception
77     when hr_api.cannot_find_prog_unit then
78       hr_api.cannot_find_prog_unit_error
79         (p_module_name => 'create_job_basket_item'
80         ,p_hook_type   => 'AP'
81         );
82   end;
83   --
84   -- When in validation only mode raise the Validate_Enabled exception
85   --
86   if p_validate then
87     raise hr_api.validate_enabled;
88   end if;
89   --
90   -- Set all output arguments
91   --
92   p_object_version_number  := l_object_version_number;
93   p_job_basket_item_id     := l_job_basket_item_id;
94   --
95   hr_utility.set_location(' Leaving:'||l_proc, 70);
96 exception
97   when hr_api.validate_enabled then
98     --
99     -- As the Validate_Enabled exception has been raised
100     -- we must rollback to the savepoint
101     --
102     rollback to create_job_basket_item;
103     --
104     -- Only set output warning arguments
105     -- (Any key or derived arguments must be set to null
106     -- when validation only mode is being used.)
107     --
108     p_object_version_number  := null;
109     p_job_basket_item_id     := null;
110     hr_utility.set_location(' Leaving:'||l_proc, 80);
111   when others then
112     --
113     -- A validation or unexpected error has occured
114     --
115     rollback to create_job_basket_item;
116     --
117     -- Reset IN OUT parameters and set OUT parameters
118     --
119     p_object_version_number  := null;
120     p_job_basket_item_id     := null;
121     hr_utility.set_location(' Leaving:'||l_proc, 90);
122     raise;
123 end create_job_basket_item;
124 --
125 --
126 -- ----------------------------------------------------------------------------
127 -- |------------------------< delete_job_basket_item >------------------------|
128 -- ----------------------------------------------------------------------------
129 --
130 procedure delete_job_basket_item
131   (p_validate                      in     boolean  default false
132   ,p_object_version_number         in     number
133   ,p_job_basket_item_id            in     number
134   ) is
135   --
136   -- Declare cursors and local variables
137   --
138 
139   l_proc                  varchar2(72) := g_package||'delete_job_basket_item';
140   l_object_version_number irc_job_basket_items.object_version_number%type;
141 begin
142   hr_utility.set_location('Entering:'|| l_proc, 10);
143   --
144   -- Issue a savepoint
145   --
146   savepoint delete_job_basket_item;
147   l_object_version_number := p_object_version_number;
148   --
149   -- Call Before Process User Hook
150   --
151   begin
152     irc_job_basket_items_bk2.delete_job_basket_item_b
153       (p_object_version_number         => l_object_version_number
154       ,p_job_basket_item_id            => p_job_basket_item_id
155       );
156   exception
157     when hr_api.cannot_find_prog_unit then
158       hr_api.cannot_find_prog_unit_error
159         (p_module_name => 'delete_job_basket_item'
160         ,p_hook_type   => 'BP'
161         );
162   end;
163   --
164   -- Process Logic
165   --
166   irc_jbi_del.del
167     (p_job_basket_item_id           => p_job_basket_item_id
168     ,p_object_version_number        => l_object_version_number);
169 
170   --
171   -- Call After Process User Hook
172   --
173   begin
174     irc_job_basket_items_bk2.delete_job_basket_item_a
175       (p_object_version_number         => l_object_version_number
176       ,p_job_basket_item_id            => p_job_basket_item_id
177       );
178   exception
179     when hr_api.cannot_find_prog_unit then
180       hr_api.cannot_find_prog_unit_error
181         (p_module_name => 'delete_job_basket_item'
182         ,p_hook_type   => 'AP'
183         );
184   end;
185   --
186   -- When in validation only mode raise the Validate_Enabled exception
187   --
188   if p_validate then
189     raise hr_api.validate_enabled;
190   end if;
191   hr_utility.set_location(' Leaving:'||l_proc, 70);
192 exception
193   when hr_api.validate_enabled then
194     --
195     -- As the Validate_Enabled exception has been raised
196     -- we must rollback to the savepoint
197     --
198     rollback to delete_job_basket_item;
199     hr_utility.set_location(' Leaving:'||l_proc, 80);
200   when others then
201     --
202     -- A validation or unexpected error has occured
203     --
204     rollback to delete_job_basket_item;
205     hr_utility.set_location(' Leaving:'||l_proc, 90);
206     raise;
207 end delete_job_basket_item;
208 --
209 end irc_job_basket_items_api;