DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_CLA_SHD

Source


1 Package Body ben_cla_shd as
2 /* $Header: beclarhi.pkb 120.0 2005/05/28 01:03:20 appldev noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33)	:= '  ben_cla_shd.';  -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |------------------------< return_api_dml_status >-------------------------|
12 -- ----------------------------------------------------------------------------
13 Function return_api_dml_status Return Boolean Is
14 --
15   l_proc 	varchar2(72) := g_package||'return_api_dml_status';
16 --
17 Begin
18   hr_utility.set_location('Entering:'||l_proc, 5);
19   --
20   Return (nvl(g_api_dml, false));
21   --
22   hr_utility.set_location(' Leaving:'||l_proc, 10);
23 End return_api_dml_status;
24 --
25 -- ----------------------------------------------------------------------------
26 -- |---------------------------< constraint_error >---------------------------|
27 -- ----------------------------------------------------------------------------
28 Procedure constraint_error
29             (p_constraint_name in all_constraints.constraint_name%TYPE) Is
30 --
31   l_proc 	varchar2(72) := g_package||'constraint_error';
32 --
33 Begin
34   hr_utility.set_location('Entering:'||l_proc, 5);
35   --
36   If (p_constraint_name = 'BEN_CMB_AGE_LGH_OF_SVC_FCT_FK1') Then
37     fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
38     fnd_message.set_token('PROCEDURE', l_proc);
39     fnd_message.set_token('STEP','5');
40     fnd_message.raise_error;
41   ElsIf (p_constraint_name = 'BEN_CMB_AGE_LGH_OF_SVC_FCT_FK2') Then
42     fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
43     fnd_message.set_token('PROCEDURE', l_proc);
44     fnd_message.set_token('STEP','10');
45     fnd_message.raise_error;
46   ElsIf (p_constraint_name = 'BEN_CMB_AGE_LGH_OF_SVC_FCT_FK3') Then
47     fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
48     fnd_message.set_token('PROCEDURE', l_proc);
49     fnd_message.set_token('STEP','15');
50     fnd_message.raise_error;
51   ElsIf (p_constraint_name = 'BEN_CMB_AGE_LGTH_OF_SVC_FCT_PK') Then
52     fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
53     fnd_message.set_token('PROCEDURE', l_proc);
54     fnd_message.set_token('STEP','20');
55     fnd_message.raise_error;
56   ElsIf (p_constraint_name = 'BEN_CMBN_AGE_LOS_RT_F_FK2') Then
57     ben_utility.child_exists_error(p_table_name => 'BEN_CMBN_AGE_LOS_RT_F');
58   ElsIf (p_constraint_name = 'BEN_ELIG_CMBN_AGE_LOS_PRTE_FK2') Then
59     ben_utility.child_exists_error(p_table_name => 'BEN_ELIG_CMBN_AGE_LOS_PRTE_F');
60   Else
61     fnd_message.set_name('PAY', 'HR_7877_API_INVALID_CONSTRAINT');
62     fnd_message.set_token('PROCEDURE', l_proc);
63     fnd_message.set_token('CONSTRAINT_NAME', p_constraint_name);
64     fnd_message.raise_error;
65   End If;
66   --
67   hr_utility.set_location(' Leaving:'||l_proc, 10);
68 End constraint_error;
69 --
70 -- ----------------------------------------------------------------------------
71 -- |-----------------------------< api_updating >-----------------------------|
72 -- ----------------------------------------------------------------------------
73 Function api_updating
74   (
75   p_cmbn_age_los_fctr_id               in number,
76   p_object_version_number              in number
77   )      Return Boolean Is
78 --
79   --
80   -- Cursor selects the 'current' row from the HR Schema
81   --
82   Cursor C_Sel1 is
83     select
84 		cmbn_age_los_fctr_id,
85 	business_group_id,
86 	los_fctr_id,
87 	age_fctr_id,
88 	cmbnd_min_val,
89 	cmbnd_max_val,
90 	ordr_num,
91 	cla_attribute_category,
92 	cla_attribute1,
93 	cla_attribute2,
94 	cla_attribute3,
95 	cla_attribute4,
96 	cla_attribute5,
97 	cla_attribute6,
98 	cla_attribute7,
99 	cla_attribute8,
100 	cla_attribute9,
101 	cla_attribute10,
102 	cla_attribute11,
103 	cla_attribute12,
104 	cla_attribute13,
105 	cla_attribute14,
106 	cla_attribute15,
107 	cla_attribute16,
108 	cla_attribute17,
109 	cla_attribute18,
110 	cla_attribute19,
111 	cla_attribute20,
112 	cla_attribute21,
113 	cla_attribute22,
114 	cla_attribute23,
115 	cla_attribute24,
116 	cla_attribute25,
117 	cla_attribute26,
118 	cla_attribute27,
119 	cla_attribute28,
120 	cla_attribute29,
121 	cla_attribute30,
122 	object_version_number,
123 	name
124     from	ben_cmbn_age_los_fctr
125     where	cmbn_age_los_fctr_id = p_cmbn_age_los_fctr_id;
126 --
127   l_proc	varchar2(72)	:= g_package||'api_updating';
128   l_fct_ret	boolean;
129 --
130 Begin
131   hr_utility.set_location('Entering:'||l_proc, 5);
132   --
133   If (
134 	p_cmbn_age_los_fctr_id is null and
135 	p_object_version_number is null
136      ) Then
137     --
138     -- One of the primary key arguments is null therefore we must
139     -- set the returning function value to false
140     --
141     l_fct_ret := false;
142   Else
143     If (
144 	p_cmbn_age_los_fctr_id = g_old_rec.cmbn_age_los_fctr_id and
145 	p_object_version_number = g_old_rec.object_version_number
146        ) Then
147       hr_utility.set_location(l_proc, 10);
148       --
149       -- The g_old_rec is current therefore we must
150       -- set the returning function to true
151       --
152       l_fct_ret := true;
153     Else
154       --
155       -- Select the current row into g_old_rec
156       --
157       Open C_Sel1;
158       Fetch C_Sel1 Into g_old_rec;
159       If C_Sel1%notfound Then
160         Close C_Sel1;
161         --
162         -- The primary key is invalid therefore we must error
163         --
164         fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
165         fnd_message.raise_error;
166       End If;
167       Close C_Sel1;
168       If (p_object_version_number <> g_old_rec.object_version_number) Then
169         fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
170         fnd_message.raise_error;
171       End If;
172       hr_utility.set_location(l_proc, 15);
173       l_fct_ret := true;
174     End If;
175   End If;
176   hr_utility.set_location(' Leaving:'||l_proc, 20);
177   Return (l_fct_ret);
178 --
179 End api_updating;
180 --
181 -- ----------------------------------------------------------------------------
182 -- |---------------------------------< lck >----------------------------------|
183 -- ----------------------------------------------------------------------------
184 Procedure lck
185   (
186   p_cmbn_age_los_fctr_id               in number,
187   p_object_version_number              in number
188   ) is
189 --
190 -- Cursor selects the 'current' row from the HR Schema
191 --
192   Cursor C_Sel1 is
193     select 	cmbn_age_los_fctr_id,
194 	business_group_id,
195 	los_fctr_id,
196 	age_fctr_id,
197 	cmbnd_min_val,
198 	cmbnd_max_val,
199 	ordr_num,
200 	cla_attribute_category,
201 	cla_attribute1,
202 	cla_attribute2,
203 	cla_attribute3,
204 	cla_attribute4,
205 	cla_attribute5,
206 	cla_attribute6,
207 	cla_attribute7,
208 	cla_attribute8,
209 	cla_attribute9,
210 	cla_attribute10,
211 	cla_attribute11,
212 	cla_attribute12,
213 	cla_attribute13,
214 	cla_attribute14,
215 	cla_attribute15,
216 	cla_attribute16,
217 	cla_attribute17,
218 	cla_attribute18,
219 	cla_attribute19,
220 	cla_attribute20,
221 	cla_attribute21,
222 	cla_attribute22,
223 	cla_attribute23,
224 	cla_attribute24,
225 	cla_attribute25,
226 	cla_attribute26,
227 	cla_attribute27,
228 	cla_attribute28,
229 	cla_attribute29,
230 	cla_attribute30,
231 	object_version_number,
232 	name
233     from	ben_cmbn_age_los_fctr
234     where	cmbn_age_los_fctr_id = p_cmbn_age_los_fctr_id
235     for	update nowait;
236 --
237   l_proc	varchar2(72) := g_package||'lck';
238 --
239 Begin
240   hr_utility.set_location('Entering:'||l_proc, 5);
241   --
245   --   (p_api_name       => l_proc,
242   -- Add any mandatory argument checking here:
243   -- Example:
244   -- hr_api.mandatory_arg_error
246   --    p_argument       => 'object_version_number',
247   --    p_argument_value => p_object_version_number);
248   --
249   Open  C_Sel1;
250   Fetch C_Sel1 Into g_old_rec;
251   If C_Sel1%notfound then
252     Close C_Sel1;
253     --
254     -- The primary key is invalid therefore we must error
255     --
256     fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
257     fnd_message.raise_error;
258   End If;
259   Close C_Sel1;
260   If (p_object_version_number <> g_old_rec.object_version_number) Then
261         fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
262         fnd_message.raise_error;
263       End If;
264 --
265   hr_utility.set_location(' Leaving:'||l_proc, 10);
266 --
267 -- We need to trap the ORA LOCK exception
268 --
269 Exception
270   When HR_Api.Object_Locked then
271     --
272     -- The object is locked therefore we need to supply a meaningful
273     -- error message.
274     --
275     fnd_message.set_name('PAY', 'HR_7165_OBJECT_LOCKED');
276     fnd_message.set_token('TABLE_NAME', 'ben_cmbn_age_los_fctr');
277     fnd_message.raise_error;
278 End lck;
279 --
280 -- ----------------------------------------------------------------------------
281 -- |-----------------------------< convert_args >-----------------------------|
282 -- ----------------------------------------------------------------------------
283 Function convert_args
284 	(
285 	p_cmbn_age_los_fctr_id          in number,
286 	p_business_group_id             in number,
287 	p_los_fctr_id                   in number,
288 	p_age_fctr_id                   in number,
289 	p_cmbnd_min_val                 in number,
290 	p_cmbnd_max_val                 in number,
291 	p_ordr_num                      in number,
292 	p_cla_attribute_category        in varchar2,
293 	p_cla_attribute1                in varchar2,
294 	p_cla_attribute2                in varchar2,
295 	p_cla_attribute3                in varchar2,
296 	p_cla_attribute4                in varchar2,
297 	p_cla_attribute5                in varchar2,
298 	p_cla_attribute6                in varchar2,
299 	p_cla_attribute7                in varchar2,
300 	p_cla_attribute8                in varchar2,
301 	p_cla_attribute9                in varchar2,
302 	p_cla_attribute10               in varchar2,
303 	p_cla_attribute11               in varchar2,
304 	p_cla_attribute12               in varchar2,
305 	p_cla_attribute13               in varchar2,
306 	p_cla_attribute14               in varchar2,
307 	p_cla_attribute15               in varchar2,
308 	p_cla_attribute16               in varchar2,
309 	p_cla_attribute17               in varchar2,
310 	p_cla_attribute18               in varchar2,
311 	p_cla_attribute19               in varchar2,
312 	p_cla_attribute20               in varchar2,
313 	p_cla_attribute21               in varchar2,
314 	p_cla_attribute22               in varchar2,
315 	p_cla_attribute23               in varchar2,
316 	p_cla_attribute24               in varchar2,
317 	p_cla_attribute25               in varchar2,
318 	p_cla_attribute26               in varchar2,
319 	p_cla_attribute27               in varchar2,
320 	p_cla_attribute28               in varchar2,
321 	p_cla_attribute29               in varchar2,
322 	p_cla_attribute30               in varchar2,
323 	p_object_version_number         in number,
324 	p_name                          in varchar2
325 	)
326 	Return g_rec_type is
327 --
328   l_rec	  g_rec_type;
329   l_proc  varchar2(72) := g_package||'convert_args';
330 --
331 Begin
332   --
333   hr_utility.set_location('Entering:'||l_proc, 5);
334   --
335   -- Convert arguments into local l_rec structure.
336   --
337   l_rec.cmbn_age_los_fctr_id             := p_cmbn_age_los_fctr_id;
338   l_rec.business_group_id                := p_business_group_id;
339   l_rec.los_fctr_id                      := p_los_fctr_id;
340   l_rec.age_fctr_id                      := p_age_fctr_id;
341   l_rec.cmbnd_min_val                    := p_cmbnd_min_val;
342   l_rec.cmbnd_max_val                    := p_cmbnd_max_val;
343   l_rec.ordr_num                         := p_ordr_num;
344   l_rec.cla_attribute_category           := p_cla_attribute_category;
345   l_rec.cla_attribute1                   := p_cla_attribute1;
346   l_rec.cla_attribute2                   := p_cla_attribute2;
347   l_rec.cla_attribute3                   := p_cla_attribute3;
348   l_rec.cla_attribute4                   := p_cla_attribute4;
349   l_rec.cla_attribute5                   := p_cla_attribute5;
350   l_rec.cla_attribute6                   := p_cla_attribute6;
351   l_rec.cla_attribute7                   := p_cla_attribute7;
352   l_rec.cla_attribute8                   := p_cla_attribute8;
353   l_rec.cla_attribute9                   := p_cla_attribute9;
354   l_rec.cla_attribute10                  := p_cla_attribute10;
355   l_rec.cla_attribute11                  := p_cla_attribute11;
356   l_rec.cla_attribute12                  := p_cla_attribute12;
357   l_rec.cla_attribute13                  := p_cla_attribute13;
358   l_rec.cla_attribute14                  := p_cla_attribute14;
359   l_rec.cla_attribute15                  := p_cla_attribute15;
360   l_rec.cla_attribute16                  := p_cla_attribute16;
361   l_rec.cla_attribute17                  := p_cla_attribute17;
362   l_rec.cla_attribute18                  := p_cla_attribute18;
363   l_rec.cla_attribute19                  := p_cla_attribute19;
364   l_rec.cla_attribute20                  := p_cla_attribute20;
365   l_rec.cla_attribute21                  := p_cla_attribute21;
366   l_rec.cla_attribute22                  := p_cla_attribute22;
367   l_rec.cla_attribute23                  := p_cla_attribute23;
368   l_rec.cla_attribute24                  := p_cla_attribute24;
369   l_rec.cla_attribute25                  := p_cla_attribute25;
370   l_rec.cla_attribute26                  := p_cla_attribute26;
371   l_rec.cla_attribute27                  := p_cla_attribute27;
372   l_rec.cla_attribute28                  := p_cla_attribute28;
373   l_rec.cla_attribute29                  := p_cla_attribute29;
374   l_rec.cla_attribute30                  := p_cla_attribute30;
375   l_rec.object_version_number            := p_object_version_number;
376   l_rec.name                             := p_name;
377   --
378   -- Return the plsql record structure.
379   --
380   hr_utility.set_location(' Leaving:'||l_proc, 10);
381   Return(l_rec);
382 --
383 End convert_args;
384 --
385 end ben_cla_shd;