[Home] [Help]
PACKAGE BODY: APPS.OTA_OFF_SHD
Source
1 PACKAGE BODY OTA_OFF_SHD as
2 /* $Header: otoffrhi.pkb 120.1.12000000.2 2007/02/06 15:25:23 vkkolla noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' ota_off_shd.'; -- Global package name
9
10 --
11 -- ----------------------------------------------------------------------------
12 -- |---------------------------< constraint_error >---------------------------|
13 -- ----------------------------------------------------------------------------
14 Procedure constraint_error
15 (p_constraint_name in all_constraints.constraint_name%TYPE
16 ) Is
17 --
18 l_proc varchar2(72) := g_package||'constraint_error';
19 --
20 Begin
21 --
22 If (p_constraint_name = 'OTA_OFFERINGS_FK1') Then
23 fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
24 fnd_message.set_token('PROCEDURE', l_proc);
25 fnd_message.set_token('STEP','5');
26 fnd_message.raise_error;
27 ElsIf (p_constraint_name = 'OTA_OFFERINGS_PK') Then
28 fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
29 fnd_message.set_token('PROCEDURE', l_proc);
30 fnd_message.set_token('STEP','10');
31 fnd_message.raise_error;
32 ElsIf (p_constraint_name = 'OTA_OFF_MAX_ATTENDEES_POSITIVE') Then
33 fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
34 fnd_message.set_token('PROCEDURE', l_proc);
35 fnd_message.set_token('STEP','15');
36 fnd_message.raise_error;
37 ElsIf (p_constraint_name = 'OTA_OFF_MAX_INTERNALS_POSITIVE') Then
38 fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
39 fnd_message.set_token('PROCEDURE', l_proc);
40 fnd_message.set_token('STEP','20');
41 fnd_message.raise_error;
42 ElsIf (p_constraint_name = 'OTA_OFF_MAX_INTERNAL_MAX_ORDER') Then
43 fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
44 fnd_message.set_token('PROCEDURE', l_proc);
45 fnd_message.set_token('STEP','25');
46 fnd_message.raise_error;
47 ElsIf (p_constraint_name = 'OTA_OFF_MIN_ATTENDEES_POSITIVE') Then
48 fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
49 fnd_message.set_token('PROCEDURE', l_proc);
50 fnd_message.set_token('STEP','30');
51 fnd_message.raise_error;
52 ElsIf (p_constraint_name = 'OTA_OFF_MIN_MAX_ORDER') Then
53 fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
54 fnd_message.set_token('PROCEDURE', l_proc);
55 fnd_message.set_token('STEP','35');
56 fnd_message.raise_error;
57 Else
58 fnd_message.set_name('PAY', 'HR_7877_API_INVALID_CONSTRAINT');
59 fnd_message.set_token('PROCEDURE', l_proc);
60 fnd_message.set_token('CONSTRAINT_NAME', p_constraint_name);
61 fnd_message.raise_error;
62 End If;
63 --
64 End constraint_error;
65 --
66 -- ----------------------------------------------------------------------------
67 -- |-----------------------------< api_updating >-----------------------------|
68 -- ----------------------------------------------------------------------------
69 Function api_updating
70 (p_offering_id in number
71 ,p_object_version_number in number
72 )
73 Return Boolean Is
74 --
75 --
76 -- Cursor selects the 'current' row from the HR Schema
77 --
78 Cursor C_Sel1 is
79 select
80 ota_offerings.offering_id
81 ,activity_version_id
82 ,business_group_id
83
84 ,start_date
85 ,end_date
86 ,owner_id
87 ,delivery_mode_id
88 ,language_id
89 ,duration
90 ,duration_units
91 ,learning_object_id
92 ,player_toolbar_flag
93 ,player_toolbar_bitset
94 ,player_new_window_flag
95 ,maximum_attendees
96 ,maximum_internal_attendees
97 ,minimum_attendees
98 ,actual_cost
99 ,budget_cost
100 ,budget_currency_code
101 ,price_basis
102 ,currency_code
103 ,standard_price
104 ,object_version_number
105 ,attribute_category
106 ,attribute1
107 ,attribute2
108 ,attribute3
109 ,attribute4
110 ,attribute5
111 ,attribute6
112 ,attribute7
113 ,attribute8
114 ,attribute9
115 ,attribute10
116 ,attribute11
117 ,attribute12
118 ,attribute13
119 ,attribute14
120 ,attribute15
121 ,attribute16
122 ,attribute17
123 ,attribute18
124 ,attribute19
125 ,attribute20
126 ,data_source
127 ,vendor_id
128 ,competency_update_level
129 ,language_code -- 2733966
130 from ota_offerings
131 where ota_offerings.offering_id = p_offering_id;
132
133 --
134 l_fct_ret boolean;
135 --
136 Begin
137 --
138 If (p_offering_id is null and
139 p_object_version_number is null
140 ) Then
141 --
142 -- One of the primary key arguments is null therefore we must
143 -- set the returning function value to false
144 --
145 l_fct_ret := false;
146 Else
147 If (p_offering_id
148 = ota_off_shd.g_old_rec.offering_id and
149 p_object_version_number
150 = ota_off_shd.g_old_rec.object_version_number
151 ) Then
152 --
153 -- The g_old_rec is current therefore we must
154 -- set the returning function to true
155 --
156 l_fct_ret := true;
157 Else
158 --
159 -- Select the current row into g_old_rec
160 --
161 Open C_Sel1;
162 Fetch C_Sel1 Into ota_off_shd.g_old_rec;
163 If C_Sel1%notfound Then
164 Close C_Sel1;
165 --
166 -- The primary key is invalid therefore we must error
167 --
168 fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
169 fnd_message.raise_error;
170 End If;
171 Close C_Sel1;
172 If (p_object_version_number
173 <> ota_off_shd.g_old_rec.object_version_number) Then
174 fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
175 fnd_message.raise_error;
176 End If;
177 l_fct_ret := true;
178 End If;
179 End If;
180 Return (l_fct_ret);
181 --
182 End api_updating;
183 --
184 -- ----------------------------------------------------------------------------
185 -- |---------------------------------< lck >----------------------------------|
186 -- ----------------------------------------------------------------------------
187 Procedure lck
188 (p_offering_id in number
189 ,p_object_version_number in number
190 ) is
191 --
192 -- Cursor selects the 'current' row from the HR Schema
193 --
194 Cursor C_Sel1 is
195 select
196 offering_id
197 ,activity_version_id
198 ,business_group_id
199
200 ,start_date
201 ,end_date
202 ,owner_id
203 ,delivery_mode_id
204 ,language_id
205 ,duration
206 ,duration_units
207 ,learning_object_id
208 ,player_toolbar_flag
209 ,player_toolbar_bitset
210 ,player_new_window_flag
211 ,maximum_attendees
212 ,maximum_internal_attendees
213 ,minimum_attendees
214 ,actual_cost
215 ,budget_cost
216 ,budget_currency_code
217 ,price_basis
218 ,currency_code
219 ,standard_price
220 ,object_version_number
221 ,attribute_category
222 ,attribute1
223 ,attribute2
224 ,attribute3
225 ,attribute4
226 ,attribute5
227 ,attribute6
228 ,attribute7
229 ,attribute8
230 ,attribute9
231 ,attribute10
232 ,attribute11
233 ,attribute12
234 ,attribute13
235 ,attribute14
236 ,attribute15
237 ,attribute16
238 ,attribute17
239 ,attribute18
240 ,attribute19
241 ,attribute20
242 ,data_source
243 ,vendor_id
244 ,competency_update_level
245 ,language_code -- 2733966
246 from ota_offerings
247 where offering_id = p_offering_id
248
249 for update nowait;
250 --
251 l_proc varchar2(72) := g_package||'lck';
252 --
253 Begin
254 hr_utility.set_location('Entering:'||l_proc, 5);
255 --
256 hr_api.mandatory_arg_error
257 (p_api_name => l_proc
258 ,p_argument => 'OFFERING_ID'
259 ,p_argument_value => p_offering_id
260 );
261 hr_utility.set_location(l_proc,6);
262
263 hr_api.mandatory_arg_error
264 (p_api_name => l_proc
265 ,p_argument => 'OBJECT_VERSION_NUMBER'
266 ,p_argument_value => p_object_version_number
267 );
268 --
269 Open C_Sel1;
270 Fetch C_Sel1 Into ota_off_shd.g_old_rec;
271 If C_Sel1%notfound then
272 Close C_Sel1;
273 --
274 -- The primary key is invalid therefore we must error
275 --
276 fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
277 fnd_message.raise_error;
278 End If;
279 Close C_Sel1;
280 If (p_object_version_number
281 <> ota_off_shd.g_old_rec.object_version_number) Then
282 fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
283 fnd_message.raise_error;
284 End If;
285 --
286 hr_utility.set_location(' Leaving:'||l_proc, 10);
287 --
288 -- We need to trap the ORA LOCK exception
289 --
290 Exception
291 When HR_Api.Object_Locked then
292 --
293 -- The object is locked therefore we need to supply a meaningful
294 -- error message.
295 --
296 fnd_message.set_name('PAY', 'HR_7165_OBJECT_LOCKED');
297 fnd_message.set_token('TABLE_NAME', 'ota_offerings');
298 fnd_message.raise_error;
299 End lck;
300 --
301 -- ----------------------------------------------------------------------------
302 -- |-----------------------------< convert_args >-----------------------------|
303 -- ----------------------------------------------------------------------------
304 Function convert_args
305 (p_offering_id in number
306 ,p_activity_version_id in number
307 ,p_business_group_id in number
308 ,p_offering_name in varchar2
309 ,p_start_date in date
310 ,p_end_date in date
311 ,p_owner_id in number
312 ,p_delivery_mode_id in number
313 ,p_language_id in number
314 ,p_duration in number
315 ,p_duration_units in varchar2
316 ,p_learning_object_id in number
317 ,p_player_toolbar_flag in varchar2
318 ,p_player_toolbar_bitset in number
319 ,p_player_new_window_flag in varchar2
320 ,p_maximum_attendees in number
321 ,p_maximum_internal_attendees in number
322 ,p_minimum_attendees in number
323 ,p_actual_cost in number
324 ,p_budget_cost in number
325 ,p_budget_currency_code in varchar2
326 ,p_price_basis in varchar2
327 ,p_currency_code in varchar2
328 ,p_standard_price in number
329 ,p_object_version_number in number
330 ,p_attribute_category in varchar2
331 ,p_attribute1 in varchar2
332 ,p_attribute2 in varchar2
333 ,p_attribute3 in varchar2
334 ,p_attribute4 in varchar2
335 ,p_attribute5 in varchar2
336 ,p_attribute6 in varchar2
337 ,p_attribute7 in varchar2
338 ,p_attribute8 in varchar2
339 ,p_attribute9 in varchar2
340 ,p_attribute10 in varchar2
341 ,p_attribute11 in varchar2
342 ,p_attribute12 in varchar2
343 ,p_attribute13 in varchar2
344 ,p_attribute14 in varchar2
345 ,p_attribute15 in varchar2
346 ,p_attribute16 in varchar2
347 ,p_attribute17 in varchar2
348 ,p_attribute18 in varchar2
349 ,p_attribute19 in varchar2
350 ,p_attribute20 in varchar2
351 ,p_data_source in varchar2
352 ,p_vendor_id in number
353 ,p_competency_update_level in varchar2
354 ,p_language_code in varchar2 -- 2733966
355 )
356 Return g_rec_type is
357 --
358 l_rec g_rec_type;
359 --
360 Begin
361 --
362 -- Convert arguments into local l_rec structure.
363 --
364 l_rec.offering_id := p_offering_id;
365 l_rec.activity_version_id := p_activity_version_id;
366 l_rec.business_group_id := p_business_group_id;
367
368 l_rec.start_date := p_start_date;
369 l_rec.end_date := p_end_date;
370 l_rec.owner_id := p_owner_id;
371 l_rec.delivery_mode_id := p_delivery_mode_id;
372 l_rec.language_id := p_language_id;
373 l_rec.duration := p_duration;
374 l_rec.duration_units := p_duration_units;
375 l_rec.learning_object_id := p_learning_object_id;
376 l_rec.player_toolbar_flag := p_player_toolbar_flag;
377 l_rec.player_toolbar_bitset := p_player_toolbar_bitset;
378 l_rec.player_new_window_flag := p_player_new_window_flag;
379 l_rec.maximum_attendees := p_maximum_attendees;
380 l_rec.maximum_internal_attendees := p_maximum_internal_attendees;
381 l_rec.minimum_attendees := p_minimum_attendees;
382 l_rec.actual_cost := p_actual_cost;
383 l_rec.budget_cost := p_budget_cost;
384 l_rec.budget_currency_code := p_budget_currency_code;
385 l_rec.price_basis := p_price_basis;
386 l_rec.currency_code := p_currency_code;
387 l_rec.standard_price := p_standard_price;
388 l_rec.object_version_number := p_object_version_number;
389 l_rec.attribute_category := p_attribute_category;
390 l_rec.attribute1 := p_attribute1;
391 l_rec.attribute2 := p_attribute2;
392 l_rec.attribute3 := p_attribute3;
393 l_rec.attribute4 := p_attribute4;
394 l_rec.attribute5 := p_attribute5;
395 l_rec.attribute6 := p_attribute6;
396 l_rec.attribute7 := p_attribute7;
397 l_rec.attribute8 := p_attribute8;
398 l_rec.attribute9 := p_attribute9;
399 l_rec.attribute10 := p_attribute10;
400 l_rec.attribute11 := p_attribute11;
401 l_rec.attribute12 := p_attribute12;
402 l_rec.attribute13 := p_attribute13;
403 l_rec.attribute14 := p_attribute14;
404 l_rec.attribute15 := p_attribute15;
405 l_rec.attribute16 := p_attribute16;
406 l_rec.attribute17 := p_attribute17;
407 l_rec.attribute18 := p_attribute18;
408 l_rec.attribute19 := p_attribute19;
409 l_rec.attribute20 := p_attribute20;
410 l_rec.data_source := p_data_source;
411 l_rec.vendor_id := p_vendor_id;
412 l_rec.competency_update_level := p_competency_update_level;
413 l_rec.language_code := p_language_code; -- 2733966
414 --
415 -- Return the plsql record structure.
416 --
417 Return(l_rec);
418 --
419 End convert_args;
420 --
421 end ota_off_shd;