DBA Data[Home] [Help]

PACKAGE BODY: APPS.PER_MEA_SHD

Source


1 Package Body per_mea_shd as
2 /* $Header: pemearhi.pkb 115.9 2002/12/06 12:20:50 pkakar noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33)    := '  per_mea_shd.';  -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |---------------------------< constraint_error >---------------------------|
12 -- ----------------------------------------------------------------------------
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 = 'PER_MEDICAL_ASSESSMENTS_FK1') Then
23     fnd_message.set_name('PAY', 'HR_52740_MEA_SERV_PROV_INV');
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 = 'PER_MEDICAL_ASSESSMENTS_FK2') Then
28     fnd_message.set_name('PAY', 'HR_52739_MEA_DIS_INV');
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 = 'PER_MEDICAL_ASSESSMENTS_FK3') Then
33     fnd_message.set_name('PAY', 'HR_52738_MEA_WORK_INC_INV');
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 = 'PER_MEDICAL_ASSESSMENTS_DT1') Then
38     fnd_message.set_name('PAY', 'HR_52741_MEA_PERSON_ID_INV');
39     fnd_message.set_token('PROCEDURE', l_proc);
43     fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
40     fnd_message.set_token('STEP','20');
41     fnd_message.raise_error;
42   ElsIf (p_constraint_name = 'PER_MEDICAL_ASSESSMENTS_PK') Then
44     fnd_message.set_token('PROCEDURE', l_proc);
45     fnd_message.set_token('STEP','30');
46     fnd_message.raise_error;
47   Else
48     fnd_message.set_name('PAY', 'HR_7877_API_INVALID_CONSTRAINT');
49     fnd_message.set_token('PROCEDURE', l_proc);
50     fnd_message.set_token('CONSTRAINT_NAME', p_constraint_name);
51     fnd_message.raise_error;
52   End If;
53   --
54 END constraint_error;
55 --
56 -- ----------------------------------------------------------------------------
57 -- |-----------------------------< api_updating >-----------------------------|
58 -- ----------------------------------------------------------------------------
59 --
60 FUNCTION api_updating
61   (p_medical_assessment_id                in     number
62   ,p_object_version_number                in     number
63   )
64   Return Boolean Is
65   --
66   -- Cursor selects the 'current' row from the HR Schema
67   --
68   Cursor C_Sel1 is
69     select
70        medical_assessment_id
71       ,mea.person_id
72       ,examiner_name
73       ,mea.organization_id
74       ,consultation_date
75       ,consultation_type
76       ,incident_id
77       ,consultation_result
78       ,disability_id
79       ,next_consultation_date
80       ,description
81       ,mea.attribute_category
82       ,mea.attribute1
83       ,mea.attribute2
84       ,mea.attribute3
85       ,mea.attribute4
86       ,mea.attribute5
87       ,mea.attribute6
88       ,mea.attribute7
89       ,mea.attribute8
90       ,mea.attribute9
91       ,mea.attribute10
92       ,mea.attribute11
93       ,mea.attribute12
94       ,mea.attribute13
95       ,mea.attribute14
96       ,mea.attribute15
97       ,mea.attribute16
98       ,mea.attribute17
99       ,mea.attribute18
100       ,mea.attribute19
101       ,mea.attribute20
102       ,mea.attribute21
103       ,mea.attribute22
104       ,mea.attribute23
105       ,mea.attribute24
106       ,mea.attribute25
107       ,mea.attribute26
108       ,mea.attribute27
109       ,mea.attribute28
110       ,mea.attribute29
111       ,mea.attribute30
112       ,mea_information_category
113       ,mea_information1
114       ,mea_information2
115       ,mea_information3
116       ,mea_information4
117       ,mea_information5
118       ,mea_information6
119       ,mea_information7
120       ,mea_information8
121       ,mea_information9
122       ,mea_information10
123       ,mea_information11
124       ,mea_information12
125       ,mea_information13
126       ,mea_information14
127       ,mea_information15
128       ,mea_information16
129       ,mea_information17
130       ,mea_information18
131       ,mea_information19
132       ,mea_information20
133       ,mea_information21
134       ,mea_information22
135       ,mea_information23
136       ,mea_information24
137       ,mea_information25
138       ,mea_information26
139       ,mea_information27
140       ,mea_information28
141       ,mea_information29
142       ,mea_information30
143       ,mea.object_version_number
144   from per_medical_assessments mea
145  where medical_assessment_id = p_medical_assessment_id;
146   --
147   l_fct_ret    boolean;
148   --
149 Begin
150   --
151   If (p_medical_assessment_id is null and
152       p_object_version_number is null
153      ) Then
154     --
155     -- One of the primary key arguments is null therefore we must
156     -- set the returning function value to false
157     --
158     l_fct_ret := false;
159   Else
160     If (p_medical_assessment_id
161         = per_mea_shd.g_old_rec.medical_assessment_id and
162         p_object_version_number
163         = per_mea_shd.g_old_rec.object_version_number
164        ) Then
165       --
166       -- The g_old_rec is current therefore we must
167       -- set the returning function to true
168       --
169       l_fct_ret := true;
170     Else
171       --
172       -- Select the current row into g_old_rec
173       --
174       Open C_Sel1;
175       Fetch C_Sel1 Into per_mea_shd.g_old_rec;
176       If C_Sel1%notfound Then
177         Close C_Sel1;
178         --
179         -- The primary key is invalid therefore we must error
180         --
181         fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
182         fnd_message.raise_error;
183       End If;
184       Close C_Sel1;
185      If (p_object_version_number
186           <> per_mea_shd.g_old_rec.object_version_number) Then
187         fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
188         fnd_message.raise_error;
189       End If;
190       l_fct_ret := true;
191     End If;
192   End If;
193   Return (l_fct_ret);
194 --
195 End api_updating;
196 --
197 -- ----------------------------------------------------------------------------
198 -- |---------------------------------< lck >----------------------------------|
199 -- ----------------------------------------------------------------------------
200 --
201 Procedure lck
202   (p_medical_assessment_id                in     number
206 -- Cursor selects the 'current' row from the HR Schema
203   ,p_object_version_number                in     number
204   ) is
205 --
207 --
208   Cursor C_Sel1 is
209     select
210        medical_assessment_id
211       ,person_id
212       ,examiner_name
213       ,organization_id
214       ,consultation_date
215       ,consultation_type
216       ,incident_id
217       ,consultation_result
218       ,disability_id
219       ,next_consultation_date
220       ,description
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       ,attribute21
243       ,attribute22
244       ,attribute23
245       ,attribute24
246       ,attribute25
247       ,attribute26
248       ,attribute27
249       ,attribute28
250       ,attribute29
251       ,attribute30
252       ,mea_information_category
253       ,mea_information1
254       ,mea_information2
255       ,mea_information3
256       ,mea_information4
257       ,mea_information5
258       ,mea_information6
259       ,mea_information7
260       ,mea_information8
261       ,mea_information9
262       ,mea_information10
263       ,mea_information11
264       ,mea_information12
265       ,mea_information13
266       ,mea_information14
267       ,mea_information15
268       ,mea_information16
269       ,mea_information17
270       ,mea_information18
271       ,mea_information19
272       ,mea_information20
273       ,mea_information21
274       ,mea_information22
275       ,mea_information23
276       ,mea_information24
277       ,mea_information25
278       ,mea_information26
279       ,mea_information27
280       ,mea_information28
281       ,mea_information29
282       ,mea_information30
283       ,object_version_number
284     from    per_medical_assessments
285     where    medical_assessment_id = p_medical_assessment_id
286     for    update nowait;
287 --
288   l_proc    varchar2(72) := g_package||'lck';
289 --
290 Begin
291   hr_utility.set_location('Entering:'||l_proc, 5);
292   --
293   hr_api.mandatory_arg_error
294     (p_api_name           => l_proc
295     ,p_argument           => 'MEDICAL_ASSESSMENT_ID'
296     ,p_argument_value     => p_medical_assessment_id
297     );
298   --
299   Open  C_Sel1;
300   Fetch C_Sel1 Into per_mea_shd.g_old_rec;
301   If C_Sel1%notfound then
302     Close C_Sel1;
303     --
304     -- The primary key is invalid therefore we must error
305     --
306     fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
307     fnd_message.raise_error;
308   End If;
309   Close C_Sel1;
310   If (p_object_version_number
311       <> per_mea_shd.g_old_rec.object_version_number) Then
312         fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
313         fnd_message.raise_error;
314   End If;
315   --
316   hr_utility.set_location(' Leaving:'||l_proc, 10);
317   --
318   -- We need to trap the ORA LOCK exception
319   --
320 Exception
321   --
322   When HR_Api.Object_Locked then
323     --
324     -- The object is locked therefore we need to supply a meaningful
325     -- error message.
326     --
327     fnd_message.set_name('PAY', 'HR_7165_OBJECT_LOCKED');
328     fnd_message.set_token('TABLE_NAME', 'per_medical_assessments');
329     fnd_message.raise_error;
330 End lck;
331 --
332 -- ----------------------------------------------------------------------------
333 -- |-----------------------------< convert_args >-----------------------------|
334 -- ----------------------------------------------------------------------------
335 --
336 Function convert_args
337   (p_medical_assessment_id          in number
338   ,p_person_id                      in number
339   ,p_examiner_name                  in varchar2
340   ,p_organization_id                in number
341   ,p_consultation_date              in date
342   ,p_consultation_type              in varchar2
343   ,p_incident_id                    in number
344   ,p_consultation_result            in varchar2
345   ,p_disability_id                  in number
346   ,p_next_consultation_date         in date
347   ,p_description                    in varchar2
348   ,p_attribute_category             in varchar2
349   ,p_attribute1                     in varchar2
350   ,p_attribute2                     in varchar2
351   ,p_attribute3                     in varchar2
352   ,p_attribute4                     in varchar2
353   ,p_attribute5                     in varchar2
354   ,p_attribute6                     in varchar2
355   ,p_attribute7                     in varchar2
356   ,p_attribute8                     in varchar2
357   ,p_attribute9                     in varchar2
358   ,p_attribute10                    in varchar2
359   ,p_attribute11                    in varchar2
360   ,p_attribute12                    in varchar2
361   ,p_attribute13                    in varchar2
362   ,p_attribute14                    in varchar2
363   ,p_attribute15                    in varchar2
364   ,p_attribute16                    in varchar2
365   ,p_attribute17                    in varchar2
366   ,p_attribute18                    in varchar2
367   ,p_attribute19                    in varchar2
368   ,p_attribute20                    in varchar2
369   ,p_attribute21                    in varchar2
370   ,p_attribute22                    in varchar2
371   ,p_attribute23                    in varchar2
372   ,p_attribute24                    in varchar2
373   ,p_attribute25                    in varchar2
374   ,p_attribute26                    in varchar2
375   ,p_attribute27                    in varchar2
376   ,p_attribute28                    in varchar2
377   ,p_attribute29                    in varchar2
378   ,p_attribute30                    in varchar2
379   ,p_mea_information_category       in varchar2
380   ,p_mea_information1               in varchar2
381   ,p_mea_information2               in varchar2
382   ,p_mea_information3               in varchar2
383   ,p_mea_information4               in varchar2
384   ,p_mea_information5               in varchar2
385   ,p_mea_information6               in varchar2
386   ,p_mea_information7               in varchar2
387   ,p_mea_information8               in varchar2
388   ,p_mea_information9               in varchar2
389   ,p_mea_information10              in varchar2
390   ,p_mea_information11              in varchar2
391   ,p_mea_information12              in varchar2
392   ,p_mea_information13              in varchar2
393   ,p_mea_information14              in varchar2
394   ,p_mea_information15              in varchar2
395   ,p_mea_information16              in varchar2
396   ,p_mea_information17              in varchar2
397   ,p_mea_information18              in varchar2
398   ,p_mea_information19              in varchar2
399   ,p_mea_information20              in varchar2
400   ,p_mea_information21              in varchar2
401   ,p_mea_information22              in varchar2
402   ,p_mea_information23              in varchar2
403   ,p_mea_information24              in varchar2
404   ,p_mea_information25              in varchar2
405   ,p_mea_information26              in varchar2
406   ,p_mea_information27              in varchar2
407   ,p_mea_information28              in varchar2
408   ,p_mea_information29              in varchar2
409   ,p_mea_information30              in varchar2
410   ,p_object_version_number          in number
411   )
412   Return g_rec_type is
413 --
414   l_rec   g_rec_type;
415 --
416 Begin
417   --
418   -- Convert arguments into local l_rec structure.
419   --
420   l_rec.medical_assessment_id            := p_medical_assessment_id;
421   l_rec.person_id                        := p_person_id;
422   l_rec.examiner_name                    := p_examiner_name;
423   l_rec.organization_id                  := p_organization_id;
424   l_rec.consultation_date                := p_consultation_date;
425   l_rec.consultation_type                := p_consultation_type;
426   l_rec.incident_id                      := p_incident_id;
427   l_rec.consultation_result              := p_consultation_result;
428   l_rec.disability_id                    := p_disability_id;
429   l_rec.next_consultation_date           := p_next_consultation_date;
430   l_rec.description                      := p_description;
431   l_rec.attribute_category               := p_attribute_category;
432   l_rec.attribute1                       := p_attribute1;
433   l_rec.attribute2                       := p_attribute2;
434   l_rec.attribute3                       := p_attribute3;
435   l_rec.attribute4                       := p_attribute4;
436   l_rec.attribute5                       := p_attribute5;
437   l_rec.attribute6                       := p_attribute6;
438   l_rec.attribute7                       := p_attribute7;
439   l_rec.attribute8                       := p_attribute8;
440   l_rec.attribute9                       := p_attribute9;
441   l_rec.attribute10                      := p_attribute10;
442   l_rec.attribute11                      := p_attribute11;
443   l_rec.attribute12                      := p_attribute12;
444   l_rec.attribute13                      := p_attribute13;
445   l_rec.attribute14                      := p_attribute14;
446   l_rec.attribute15                      := p_attribute15;
447   l_rec.attribute16                      := p_attribute16;
448   l_rec.attribute17                      := p_attribute17;
449   l_rec.attribute18                      := p_attribute18;
450   l_rec.attribute19                      := p_attribute19;
451   l_rec.attribute20                      := p_attribute20;
452   l_rec.attribute21                      := p_attribute21;
453   l_rec.attribute22                      := p_attribute22;
454   l_rec.attribute23                      := p_attribute23;
455   l_rec.attribute24                      := p_attribute24;
456   l_rec.attribute25                      := p_attribute25;
457   l_rec.attribute26                      := p_attribute26;
458   l_rec.attribute27                      := p_attribute27;
459   l_rec.attribute28                      := p_attribute28;
460   l_rec.attribute29                      := p_attribute29;
461   l_rec.attribute30                      := p_attribute30;
462   l_rec.mea_information_category         := p_mea_information_category;
463   l_rec.mea_information1                 := p_mea_information1;
464   l_rec.mea_information2                 := p_mea_information2;
465   l_rec.mea_information3                 := p_mea_information3;
466   l_rec.mea_information4                 := p_mea_information4;
467   l_rec.mea_information5                 := p_mea_information5;
468   l_rec.mea_information6                 := p_mea_information6;
469   l_rec.mea_information7                 := p_mea_information7;
470   l_rec.mea_information8                 := p_mea_information8;
471   l_rec.mea_information9                 := p_mea_information9;
472   l_rec.mea_information10                := p_mea_information10;
473   l_rec.mea_information11                := p_mea_information11;
474   l_rec.mea_information12                := p_mea_information12;
475   l_rec.mea_information13                := p_mea_information13;
476   l_rec.mea_information14                := p_mea_information14;
477   l_rec.mea_information15                := p_mea_information15;
478   l_rec.mea_information16                := p_mea_information16;
479   l_rec.mea_information17                := p_mea_information17;
480   l_rec.mea_information18                := p_mea_information18;
481   l_rec.mea_information19                := p_mea_information19;
482   l_rec.mea_information20                := p_mea_information20;
483   l_rec.mea_information21                := p_mea_information21;
484   l_rec.mea_information22                := p_mea_information22;
485   l_rec.mea_information23                := p_mea_information23;
486   l_rec.mea_information24                := p_mea_information24;
487   l_rec.mea_information25                := p_mea_information25;
488   l_rec.mea_information26                := p_mea_information26;
489   l_rec.mea_information27                := p_mea_information27;
490   l_rec.mea_information28                := p_mea_information28;
491   l_rec.mea_information29                := p_mea_information29;
492   l_rec.mea_information30                := p_mea_information30;
493   l_rec.object_version_number            := p_object_version_number;
494   --
495   -- Return the plsql record structure.
496   --
497   Return(l_rec);
498 --
499 End convert_args;
500 --
501 end per_mea_shd;