[Home] [Help]
PACKAGE BODY: APPS.OTA_TPS_SHD
Source
1 Package Body ota_tps_shd as
2 /* $Header: ottpsrhi.pkb 120.2 2005/12/14 15:17:58 asud noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' ota_tps_shd.'; -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |------------------------< return_api_dml_status >-------------------------|
12 -- ----------------------------------------------------------------------------
13 Function return_api_dml_status Return Boolean Is
14 --
15 Begin
16 --
17 Return (nvl(g_api_dml, false));
18 --
19 End return_api_dml_status;
20 --
21 -- ----------------------------------------------------------------------------
22 -- |---------------------------< constraint_error >---------------------------|
23 -- ----------------------------------------------------------------------------
24 Procedure constraint_error
25 (p_constraint_name in all_constraints.constraint_name%TYPE
26 ) Is
27 --
28 l_proc varchar2(72) := g_package||'constraint_error';
29 --
30 Begin
31 --
32 If (p_constraint_name = 'OTA_TRAINING_PLANS_PK') 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','5');
36 fnd_message.raise_error;
37 ElsIf (p_constraint_name = 'OTA_TRAINING_PLANS_UK3') Then
38 fnd_message.set_name('OTA', 'OTA_13867_TPS_DUPLICATE_TP');
39 fnd_message.set_token('PROCEDURE', l_proc);
40 fnd_message.set_token('STEP','30');
41 fnd_message.raise_error;
42 Else
43 fnd_message.set_name('PAY', 'HR_7877_API_INVALID_CONSTRAINT');
44 fnd_message.set_token('PROCEDURE', l_proc);
45 fnd_message.set_token('CONSTRAINT_NAME', p_constraint_name);
46 fnd_message.raise_error;
47 End If;
48 --
49 End constraint_error;
50 --
51 -- ----------------------------------------------------------------------------
52 -- |-----------------------------< api_updating >-----------------------------|
53 -- ----------------------------------------------------------------------------
54 Function api_updating
55 (p_training_plan_id in ota_training_plans.training_plan_id%TYPE
56 ,p_object_version_number in ota_training_plans.object_version_number%TYPE
57 )
58 Return Boolean Is
59 --
60 --
61 -- Cursor selects the 'current' row from the HR Schema
62 --
63 Cursor C_Sel1 is
64 select
65 training_plan_id
66 ,time_period_id
67 ,plan_status_type_id
68 ,organization_id
69 ,person_id
70 ,budget_currency
71 ,name
72 ,description
73 ,business_group_id
74 ,object_version_number
75 ,attribute_category
76 ,attribute1
77 ,attribute2
78 ,attribute3
79 ,attribute4
80 ,attribute5
81 ,attribute6
82 ,attribute7
83 ,attribute8
84 ,attribute9
85 ,attribute10
86 ,attribute11
87 ,attribute12
88 ,attribute13
89 ,attribute14
90 ,attribute15
91 ,attribute16
92 ,attribute17
93 ,attribute18
94 ,attribute19
95 ,attribute20
96 ,attribute21
97 ,attribute22
98 ,attribute23
99 ,attribute24
100 ,attribute25
101 ,attribute26
102 ,attribute27
103 ,attribute28
104 ,attribute29
105 ,attribute30
106 ,plan_source --changed
107 ,start_date
108 ,end_date
109 ,creator_person_id
110 ,additional_member_flag
111 ,learning_path_id
112 -- Modified for Bug#3479186
113 ,contact_id
114 from ota_training_plans
115 where training_plan_id = p_training_plan_id;
116 --
117 l_fct_ret boolean;
118 --
119 Begin
120 --
121 If (p_training_plan_id is null and
122 p_object_version_number is null
123 ) Then
124 --
125 -- One of the primary key arguments is null therefore we must
126 -- set the returning function value to false
127 --
128 l_fct_ret := false;
129 Else
130 If (p_training_plan_id
131 = ota_tps_shd.g_old_rec.training_plan_id and
132 p_object_version_number
133 = ota_tps_shd.g_old_rec.object_version_number
134 ) Then
135 --
136 -- The g_old_rec is current therefore we must
137 -- set the returning function to true
138 --
139 l_fct_ret := true;
140 Else
141 --
142 -- Select the current row into g_old_rec
143 --
144 Open C_Sel1;
145 Fetch C_Sel1 Into ota_tps_shd.g_old_rec;
146 If C_Sel1%notfound Then
147 Close C_Sel1;
148 --
149 -- The primary key is invalid therefore we must error
150 --
151 fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
152 fnd_message.raise_error;
153 End If;
154 Close C_Sel1;
155 If (p_object_version_number
156 <> ota_tps_shd.g_old_rec.object_version_number) Then
157 fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
158 fnd_message.raise_error;
159 End If;
160 l_fct_ret := true;
161 End If;
162 End If;
163 Return (l_fct_ret);
164 --
165 End api_updating;
166 --
167 -- ----------------------------------------------------------------------------
168 -- |---------------------------------< lck >----------------------------------|
169 -- ----------------------------------------------------------------------------
170 Procedure lck
171 (p_training_plan_id in number
172 ,p_object_version_number in number
173 ) is
174 --
175 -- Cursor selects the 'current' row from the HR Schema
176 --
177 Cursor C_Sel1 is
178 select
179 training_plan_id
180 ,time_period_id
181 ,plan_status_type_id
182 ,organization_id
183 ,person_id
184 ,budget_currency
185 ,name
186 ,description
187 ,business_group_id
188 ,object_version_number
189 ,attribute_category
190 ,attribute1
191 ,attribute2
192 ,attribute3
193 ,attribute4
194 ,attribute5
195 ,attribute6
196 ,attribute7
197 ,attribute8
198 ,attribute9
199 ,attribute10
200 ,attribute11
201 ,attribute12
202 ,attribute13
203 ,attribute14
204 ,attribute15
205 ,attribute16
206 ,attribute17
207 ,attribute18
208 ,attribute19
209 ,attribute20
210 ,attribute21
211 ,attribute22
212 ,attribute23
213 ,attribute24
214 ,attribute25
215 ,attribute26
216 ,attribute27
217 ,attribute28
218 ,attribute29
219 ,attribute30
220 ,plan_source --changed
221 ,start_date
222 ,end_date
223 ,creator_person_id
224 ,additional_member_flag
225 ,learning_path_id
226 ,contact_id
227 from ota_training_plans
228 where training_plan_id = p_training_plan_id
229 for update nowait;
230 --
231 l_proc varchar2(72) := g_package||'lck';
232 --
233 Begin
234 hr_utility.set_location('Entering:'||l_proc, 5);
235 --
236 hr_api.mandatory_arg_error
237 (p_api_name => l_proc
238 ,p_argument => 'TRAINING_PLAN_ID'
239 ,p_argument_value => p_training_plan_id
240 );
241 --
242 Open C_Sel1;
243 Fetch C_Sel1 Into ota_tps_shd.g_old_rec;
244 If C_Sel1%notfound then
245 Close C_Sel1;
246 --
247 -- The primary key is invalid therefore we must error
248 --
249 fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
250 fnd_message.raise_error;
251 End If;
252 Close C_Sel1;
253 If (p_object_version_number
254 <> ota_tps_shd.g_old_rec.object_version_number) Then
255 fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
256 fnd_message.raise_error;
257 End If;
258 --
259 hr_utility.set_location(' Leaving:'||l_proc, 10);
260 --
261 -- We need to trap the ORA LOCK exception
262 --
263 Exception
264 When HR_Api.Object_Locked then
265 --
266 -- The object is locked therefore we need to supply a meaningful
267 -- error message.
268 --
269 fnd_message.set_name('PAY', 'HR_7165_OBJECT_LOCKED');
270 fnd_message.set_token('TABLE_NAME', 'ota_training_plans');
271 fnd_message.raise_error;
272 End lck;
273 --
274 -- ----------------------------------------------------------------------------
275 -- |-----------------------------< convert_args >-----------------------------|
276 -- ----------------------------------------------------------------------------
277 Function convert_args
278 (p_training_plan_id in number
279 ,p_time_period_id in number
280 ,p_plan_status_type_id in varchar2
281 ,p_organization_id in number
282 ,p_person_id in number
283 ,p_budget_currency in varchar2
284 ,p_name in varchar2
285 ,p_description in varchar2
286 ,p_business_group_id in number
287 ,p_object_version_number in number
288 ,p_attribute_category in varchar2
289 ,p_attribute1 in varchar2
290 ,p_attribute2 in varchar2
291 ,p_attribute3 in varchar2
292 ,p_attribute4 in varchar2
293 ,p_attribute5 in varchar2
294 ,p_attribute6 in varchar2
295 ,p_attribute7 in varchar2
296 ,p_attribute8 in varchar2
297 ,p_attribute9 in varchar2
298 ,p_attribute10 in varchar2
299 ,p_attribute11 in varchar2
300 ,p_attribute12 in varchar2
301 ,p_attribute13 in varchar2
302 ,p_attribute14 in varchar2
303 ,p_attribute15 in varchar2
304 ,p_attribute16 in varchar2
305 ,p_attribute17 in varchar2
306 ,p_attribute18 in varchar2
307 ,p_attribute19 in varchar2
308 ,p_attribute20 in varchar2
309 ,p_attribute21 in varchar2
310 ,p_attribute22 in varchar2
311 ,p_attribute23 in varchar2
312 ,p_attribute24 in varchar2
313 ,p_attribute25 in varchar2
314 ,p_attribute26 in varchar2
315 ,p_attribute27 in varchar2
316 ,p_attribute28 in varchar2
317 ,p_attribute29 in varchar2
318 ,p_attribute30 in varchar2
319 ,p_plan_source in varchar2 --changed
320 ,p_start_date in date
321 ,p_end_date in date
322 ,p_creator_person_id in number
323 ,p_additional_member_flag in varchar2
324 ,p_learning_path_id in number
325 ,p_contact_id in number
326 )
327 Return g_rec_type is
328 --
329 l_rec g_rec_type;
330 --
331 Begin
332 --
333 -- Convert arguments into local l_rec structure.
334 --
335 l_rec.training_plan_id := p_training_plan_id;
336 l_rec.time_period_id := p_time_period_id;
337 l_rec.plan_status_type_id := p_plan_status_type_id;
338 l_rec.organization_id := p_organization_id;
339 l_rec.person_id := p_person_id;
340 l_rec.budget_currency := p_budget_currency;
341 l_rec.name := p_name;
342 l_rec.description := p_description;
343 l_rec.business_group_id := p_business_group_id;
344 l_rec.object_version_number := p_object_version_number;
345 l_rec.attribute_category := p_attribute_category;
346 l_rec.attribute1 := p_attribute1;
347 l_rec.attribute2 := p_attribute2;
348 l_rec.attribute3 := p_attribute3;
349 l_rec.attribute4 := p_attribute4;
350 l_rec.attribute5 := p_attribute5;
351 l_rec.attribute6 := p_attribute6;
352 l_rec.attribute7 := p_attribute7;
353 l_rec.attribute8 := p_attribute8;
354 l_rec.attribute9 := p_attribute9;
355 l_rec.attribute10 := p_attribute10;
356 l_rec.attribute11 := p_attribute11;
357 l_rec.attribute12 := p_attribute12;
358 l_rec.attribute13 := p_attribute13;
359 l_rec.attribute14 := p_attribute14;
360 l_rec.attribute15 := p_attribute15;
361 l_rec.attribute16 := p_attribute16;
362 l_rec.attribute17 := p_attribute17;
363 l_rec.attribute18 := p_attribute18;
364 l_rec.attribute19 := p_attribute19;
365 l_rec.attribute20 := p_attribute20;
366 l_rec.attribute21 := p_attribute21;
367 l_rec.attribute22 := p_attribute22;
368 l_rec.attribute23 := p_attribute23;
369 l_rec.attribute24 := p_attribute24;
370 l_rec.attribute25 := p_attribute25;
371 l_rec.attribute26 := p_attribute26;
372 l_rec.attribute27 := p_attribute27;
373 l_rec.attribute28 := p_attribute28;
374 l_rec.attribute29 := p_attribute29;
375 l_rec.attribute30 := p_attribute30;
376 l_rec.plan_source := p_plan_source; --changed
377 l_rec.start_date := p_start_date;
378 l_rec.end_date := p_end_date;
379 l_rec.creator_person_id := p_creator_person_id;
380 l_rec.additional_member_flag := p_additional_member_flag;
381 l_rec.learning_path_id := p_learning_path_id;
382 l_rec.contact_id := p_contact_id;
383 --
384 --
385 -- Return the plsql record structure.
386 --
387 Return(l_rec);
388 --
389 End convert_args;
390 --
391 end ota_tps_shd;