[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;