DBA Data[Home] [Help]

PACKAGE BODY: APPS.PE_PEI_SHD

Source


1 Package Body pe_pei_shd as
2 /* $Header: pepeirhi.pkb 120.1 2005/07/25 05:01:42 jpthomas noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33)	:= '  pe_pei_shd.';  -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |---------------------------< constraint_error >---------------------------|
12 -- ----------------------------------------------------------------------------
13 Procedure constraint_error
14             (p_constraint_name in all_constraints.constraint_name%TYPE) Is
15 --
16   l_proc 	varchar2(72) := g_package||'constraint_error';
17 --
18 Begin
19   hr_utility.set_location('Entering:'||l_proc, 5);
20   --
21   If (p_constraint_name = 'PER_PEOPLE_EXTRA_INFO_FK1') Then
22     hr_utility.set_message(800, 'HR_INV_INFO_TYPE');
23     hr_utility.raise_error;
24   ElsIf (p_constraint_name = 'PER_PEOPLE_EXTRA_INFO_PK') Then
25     hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
26     hr_utility.set_message_token('PROCEDURE', l_proc);
27     hr_utility.set_message_token('STEP','10');
28     hr_utility.raise_error;
29   Else
30     hr_utility.set_message(801, 'HR_7877_API_INVALID_CONSTRAINT');
31     hr_utility.set_message_token('PROCEDURE', l_proc);
32     hr_utility.set_message_token('CONSTRAINT_NAME', p_constraint_name);
33     hr_utility.raise_error;
34   End If;
35   --
36   hr_utility.set_location(' Leaving:'||l_proc, 10);
37 End constraint_error;
38 --
39 -- ----------------------------------------------------------------------------
40 -- |-----------------------------< api_updating >-----------------------------|
41 -- ----------------------------------------------------------------------------
42 Function api_updating
43   (
44   p_person_extra_info_id               in number,
45   p_object_version_number              in number
46   )      Return Boolean Is
47 --
48   --
49   -- Cursor selects the 'current' row from the HR Schema
50   --
51   Cursor C_Sel1 is
52     select
53 	person_extra_info_id,
54 	person_id,
55 	information_type,
56 	request_id,
57 	program_application_id,
58 	program_id,
59 	program_update_date,
60 	pei_attribute_category,
61 	pei_attribute1,
62 	pei_attribute2,
63 	pei_attribute3,
64 	pei_attribute4,
65 	pei_attribute5,
66 	pei_attribute6,
67 	pei_attribute7,
68 	pei_attribute8,
69 	pei_attribute9,
70 	pei_attribute10,
71 	pei_attribute11,
72 	pei_attribute12,
73 	pei_attribute13,
74 	pei_attribute14,
75 	pei_attribute15,
76 	pei_attribute16,
77 	pei_attribute17,
78 	pei_attribute18,
79 	pei_attribute19,
80 	pei_attribute20,
81 	pei_information_category,
82 	pei_information1,
83 	pei_information2,
84 	pei_information3,
85 	pei_information4,
86 	pei_information5,
87 	pei_information6,
88 	pei_information7,
89 	pei_information8,
90 	pei_information9,
91 	pei_information10,
92 	pei_information11,
93 	pei_information12,
94 	pei_information13,
95 	pei_information14,
96 	pei_information15,
97 	pei_information16,
98 	pei_information17,
99 	pei_information18,
100 	pei_information19,
101 	pei_information20,
102 	pei_information21,
103 	pei_information22,
104 	pei_information23,
105 	pei_information24,
106 	pei_information25,
107 	pei_information26,
108 	pei_information27,
109 	pei_information28,
110 	pei_information29,
111 	pei_information30,
112 	object_version_number
113     from	per_people_extra_info
114     where	person_extra_info_id = p_person_extra_info_id;
115 --
116   l_proc	varchar2(72)	:= g_package||'api_updating';
117   l_fct_ret	boolean;
118 --
119 Begin
120   hr_utility.set_location('Entering:'||l_proc, 5);
121   --
122   If (
123 	p_person_extra_info_id is null and
124 	p_object_version_number is null
125      ) Then
126     --
127     -- One of the primary key arguments is null therefore we must
128     -- set the returning function value to false
129     --
130     l_fct_ret := false;
131   Else
132     If (
133 	p_person_extra_info_id = g_old_rec.person_extra_info_id and
134 	p_object_version_number = g_old_rec.object_version_number
135        ) Then
136       hr_utility.set_location(l_proc, 10);
137       --
138       -- The g_old_rec is current therefore we must
139       -- set the returning function to true
140       --
141       l_fct_ret := true;
142     Else
143       --
144       -- Select the current row into g_old_rec
145       --
146       Open C_Sel1;
147       Fetch C_Sel1 Into g_old_rec;
148       If C_Sel1%notfound Then
149         Close C_Sel1;
150         --
151         -- The primary key is invalid therefore we must error
152         --
153         hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
154         hr_utility.raise_error;
155       End If;
156       Close C_Sel1;
157       If (p_object_version_number <> g_old_rec.object_version_number) Then
158         hr_utility.set_message(801, 'HR_7155_OBJECT_INVALID');
159         hr_utility.raise_error;
160       End If;
161       hr_utility.set_location(l_proc, 15);
162       l_fct_ret := true;
163     End If;
164   End If;
165   hr_utility.set_location(' Leaving:'||l_proc, 20);
166   Return (l_fct_ret);
167 --
168 End api_updating;
169 --
170 -- ----------------------------------------------------------------------------
171 -- |---------------------------------< lck >----------------------------------|
172 -- ----------------------------------------------------------------------------
173 Procedure lck
174   (
175   p_person_extra_info_id               in number,
176   p_object_version_number              in number
177   ) is
178 --
179 -- Cursor selects the 'current' row from the HR Schema
180 --
181   Cursor C_Sel1 is
182     select 	person_extra_info_id,
183 	person_id,
184 	information_type,
185 	request_id,
186 	program_application_id,
187 	program_id,
188 	program_update_date,
189 	pei_attribute_category,
190 	pei_attribute1,
191 	pei_attribute2,
192 	pei_attribute3,
193 	pei_attribute4,
194 	pei_attribute5,
195 	pei_attribute6,
196 	pei_attribute7,
197 	pei_attribute8,
198 	pei_attribute9,
199 	pei_attribute10,
200 	pei_attribute11,
201 	pei_attribute12,
202 	pei_attribute13,
203 	pei_attribute14,
204 	pei_attribute15,
205 	pei_attribute16,
206 	pei_attribute17,
207 	pei_attribute18,
208 	pei_attribute19,
209 	pei_attribute20,
210 	pei_information_category,
211 	pei_information1,
212 	pei_information2,
213 	pei_information3,
214 	pei_information4,
215 	pei_information5,
216 	pei_information6,
217 	pei_information7,
218 	pei_information8,
219 	pei_information9,
220 	pei_information10,
221 	pei_information11,
222 	pei_information12,
223 	pei_information13,
224 	pei_information14,
225 	pei_information15,
226 	pei_information16,
227 	pei_information17,
228 	pei_information18,
229 	pei_information19,
230 	pei_information20,
231 	pei_information21,
232 	pei_information22,
233 	pei_information23,
234 	pei_information24,
235 	pei_information25,
236 	pei_information26,
237 	pei_information27,
238 	pei_information28,
239 	pei_information29,
240 	pei_information30,
241 	object_version_number
242     from	per_people_extra_info
243     where	person_extra_info_id = p_person_extra_info_id
244     for	update nowait;
245 --
246   l_proc	varchar2(72) := g_package||'lck';
247 --
248 Begin
249   hr_utility.set_location('Entering:'||l_proc, 5);
250   --
251   -- Add any mandatory argument checking here:
252   -- Example:
253   -- hr_api.mandatory_arg_error
254   --   (p_api_name       => l_proc,
255   --    p_argument       => 'object_version_number',
256   --    p_argument_value => p_object_version_number);
257   --
258   Open  C_Sel1;
259   Fetch C_Sel1 Into g_old_rec;
260   If C_Sel1%notfound then
261     Close C_Sel1;
262     --
263     -- The primary key is invalid therefore we must error
264     --
265     hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
266     hr_utility.raise_error;
267   End If;
268   Close C_Sel1;
269   If (p_object_version_number <> g_old_rec.object_version_number) Then
270         hr_utility.set_message(801, 'HR_7155_OBJECT_INVALID');
271         hr_utility.raise_error;
272       End If;
273 --
274   hr_utility.set_location(' Leaving:'||l_proc, 10);
275 --
276 -- We need to trap the ORA LOCK exception
277 --
278 Exception
279   When HR_Api.Object_Locked then
280     --
281     -- The object is locked therefore we need to supply a meaningful
282     -- error message.
283     --
284     hr_utility.set_message(801, 'HR_7165_OBJECT_LOCKED');
285     hr_utility.set_message_token('TABLE_NAME', 'per_people_extra_info');
286     hr_utility.raise_error;
287 End lck;
288 --
289 -- ----------------------------------------------------------------------------
290 -- |-----------------------------< convert_args >-----------------------------|
291 -- ----------------------------------------------------------------------------
292 Function convert_args
293 	(
294 	p_person_extra_info_id          in number,
295 	p_person_id                     in number,
296 	p_information_type              in varchar2,
297 	p_request_id                    in number,
298 	p_program_application_id        in number,
299 	p_program_id                    in number,
300 	p_program_update_date           in date,
301 	p_pei_attribute_category        in varchar2,
302 	p_pei_attribute1                in varchar2,
303 	p_pei_attribute2                in varchar2,
304 	p_pei_attribute3                in varchar2,
305 	p_pei_attribute4                in varchar2,
306 	p_pei_attribute5                in varchar2,
307 	p_pei_attribute6                in varchar2,
308 	p_pei_attribute7                in varchar2,
309 	p_pei_attribute8                in varchar2,
310 	p_pei_attribute9                in varchar2,
311 	p_pei_attribute10               in varchar2,
312 	p_pei_attribute11               in varchar2,
313 	p_pei_attribute12               in varchar2,
314 	p_pei_attribute13               in varchar2,
315 	p_pei_attribute14               in varchar2,
316 	p_pei_attribute15               in varchar2,
317 	p_pei_attribute16               in varchar2,
318 	p_pei_attribute17               in varchar2,
319 	p_pei_attribute18               in varchar2,
320 	p_pei_attribute19               in varchar2,
321 	p_pei_attribute20               in varchar2,
322 	p_pei_information_category      in varchar2,
323 	p_pei_information1              in varchar2,
324 	p_pei_information2              in varchar2,
325 	p_pei_information3              in varchar2,
326 	p_pei_information4              in varchar2,
327 	p_pei_information5              in varchar2,
328 	p_pei_information6              in varchar2,
329 	p_pei_information7              in varchar2,
330 	p_pei_information8              in varchar2,
331 	p_pei_information9              in varchar2,
332 	p_pei_information10             in varchar2,
333 	p_pei_information11             in varchar2,
334 	p_pei_information12             in varchar2,
335 	p_pei_information13             in varchar2,
336 	p_pei_information14             in varchar2,
337 	p_pei_information15             in varchar2,
338 	p_pei_information16             in varchar2,
339 	p_pei_information17             in varchar2,
340 	p_pei_information18             in varchar2,
341 	p_pei_information19             in varchar2,
342 	p_pei_information20             in varchar2,
343 	p_pei_information21             in varchar2,
344 	p_pei_information22             in varchar2,
345 	p_pei_information23             in varchar2,
346 	p_pei_information24             in varchar2,
347 	p_pei_information25             in varchar2,
348 	p_pei_information26             in varchar2,
349 	p_pei_information27             in varchar2,
350 	p_pei_information28             in varchar2,
351 	p_pei_information29             in varchar2,
352 	p_pei_information30             in varchar2,
353 	p_object_version_number         in number
354 	)
355 	Return g_rec_type is
356 --
357   l_rec	  g_rec_type;
358   l_proc  varchar2(72) := g_package||'convert_args';
359 --
360 Begin
361   --
362   hr_utility.set_location('Entering:'||l_proc, 5);
363   --
364   -- Convert arguments into local l_rec structure.
365   --
366   l_rec.person_extra_info_id             := p_person_extra_info_id;
367   l_rec.person_id                        := p_person_id;
368   l_rec.information_type                 := p_information_type;
369   l_rec.request_id                       := p_request_id;
370   l_rec.program_application_id           := p_program_application_id;
371   l_rec.program_id                       := p_program_id;
372   l_rec.program_update_date              := p_program_update_date;
373   l_rec.pei_attribute_category           := p_pei_attribute_category;
374   l_rec.pei_attribute1                   := p_pei_attribute1;
375   l_rec.pei_attribute2                   := p_pei_attribute2;
376   l_rec.pei_attribute3                   := p_pei_attribute3;
377   l_rec.pei_attribute4                   := p_pei_attribute4;
378   l_rec.pei_attribute5                   := p_pei_attribute5;
379   l_rec.pei_attribute6                   := p_pei_attribute6;
380   l_rec.pei_attribute7                   := p_pei_attribute7;
381   l_rec.pei_attribute8                   := p_pei_attribute8;
382   l_rec.pei_attribute9                   := p_pei_attribute9;
383   l_rec.pei_attribute10                  := p_pei_attribute10;
384   l_rec.pei_attribute11                  := p_pei_attribute11;
385   l_rec.pei_attribute12                  := p_pei_attribute12;
386   l_rec.pei_attribute13                  := p_pei_attribute13;
387   l_rec.pei_attribute14                  := p_pei_attribute14;
388   l_rec.pei_attribute15                  := p_pei_attribute15;
389   l_rec.pei_attribute16                  := p_pei_attribute16;
390   l_rec.pei_attribute17                  := p_pei_attribute17;
391   l_rec.pei_attribute18                  := p_pei_attribute18;
392   l_rec.pei_attribute19                  := p_pei_attribute19;
393   l_rec.pei_attribute20                  := p_pei_attribute20;
394   l_rec.pei_information_category         := p_pei_information_category;
395   l_rec.pei_information1                 := p_pei_information1;
396   l_rec.pei_information2                 := p_pei_information2;
397   l_rec.pei_information3                 := p_pei_information3;
398   l_rec.pei_information4                 := p_pei_information4;
399   l_rec.pei_information5                 := p_pei_information5;
400   l_rec.pei_information6                 := p_pei_information6;
401   l_rec.pei_information7                 := p_pei_information7;
402   l_rec.pei_information8                 := p_pei_information8;
403   l_rec.pei_information9                 := p_pei_information9;
404   l_rec.pei_information10                := p_pei_information10;
405   l_rec.pei_information11                := p_pei_information11;
406   l_rec.pei_information12                := p_pei_information12;
407   l_rec.pei_information13                := p_pei_information13;
408   l_rec.pei_information14                := p_pei_information14;
409   l_rec.pei_information15                := p_pei_information15;
410   l_rec.pei_information16                := p_pei_information16;
411   l_rec.pei_information17                := p_pei_information17;
412   l_rec.pei_information18                := p_pei_information18;
413   l_rec.pei_information19                := p_pei_information19;
414   l_rec.pei_information20                := p_pei_information20;
415   l_rec.pei_information21                := p_pei_information21;
416   l_rec.pei_information22                := p_pei_information22;
417   l_rec.pei_information23                := p_pei_information23;
418   l_rec.pei_information24                := p_pei_information24;
419   l_rec.pei_information25                := p_pei_information25;
420   l_rec.pei_information26                := p_pei_information26;
421   l_rec.pei_information27                := p_pei_information27;
422   l_rec.pei_information28                := p_pei_information28;
423   l_rec.pei_information29                := p_pei_information29;
424   l_rec.pei_information30                := p_pei_information30;
425   l_rec.object_version_number            := p_object_version_number;
426   --
427   -- Return the plsql record structure.
428   --
429   hr_utility.set_location(' Leaving:'||l_proc, 10);
430   Return(l_rec);
431 --
432 End convert_args;
433 --
434 end pe_pei_shd;