DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_LSF_SHD

Source


1 Package Body ben_lsf_shd as
2 /* $Header: belsfrhi.pkb 120.0 2005/05/28 03:37:45 appldev noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33)	:= '  ben_lsf_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_LOS_FCTR_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_LOS_FCTR_PK') 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_LOSE_RT_FK1') Then
47     ben_utility.child_exists_error(p_table_name => 'BEN_LOS_RT_F');
48   ElsIf (p_constraint_name = 'BEN_CMB_AGE_LGH_OF_SVC_FCT_FK2') Then
49     ben_utility.child_exists_error(p_table_name => 'BEN_CMBN_AGE_LGTH_OF_SVC_FCTR');
50   ElsIf (p_constraint_name = 'BEN_ELIG_LOS_PRTE_FK1') Then
51     ben_utility.child_exists_error(p_table_name => 'BEN_ELIG_LOS_PRTE_F');
52   ElsIf (p_constraint_name = 'BEN_VSTG_LOS_RQMT_FK1') Then
53     ben_utility.child_exists_error(p_table_name => 'BEN_VSTG_LOS_RQMT');
54   Else
55     fnd_message.set_name('PAY', 'HR_7877_API_INVALID_CONSTRAINT');
56     fnd_message.set_token('PROCEDURE', l_proc);
57     fnd_message.set_token('CONSTRAINT_NAME', p_constraint_name);
58     fnd_message.raise_error;
59   End If;
60   --
61   hr_utility.set_location(' Leaving:'||l_proc, 10);
62 End constraint_error;
63 --
64 -- ----------------------------------------------------------------------------
65 -- |-----------------------------< api_updating >-----------------------------|
66 -- ----------------------------------------------------------------------------
67 Function api_updating
68   (
69   p_los_fctr_id                        in number,
70   p_object_version_number              in number
71   )      Return Boolean Is
72 --
73   --
74   -- Cursor selects the 'current' row from the HR Schema
75   --
76   Cursor C_Sel1 is
77     select
78 		los_fctr_id,
79 	name,
80 	business_group_id,
81 	los_det_cd,
82 	los_det_rl,
83 	mn_los_num,
84 	mx_los_num,
85 	no_mx_los_num_apls_flag,
86 	no_mn_los_num_apls_flag,
87 	rndg_cd,
88 	rndg_rl,
89 	los_dt_to_use_cd,
90 	los_dt_to_use_rl,
91 	los_uom,
92         los_calc_rl,
93         los_alt_val_to_use_cd,
94 	lsf_attribute_category,
95 	lsf_attribute1,
96 	lsf_attribute2,
97 	lsf_attribute3,
98 	lsf_attribute4,
99 	lsf_attribute5,
100 	lsf_attribute6,
101 	lsf_attribute7,
102 	lsf_attribute8,
103 	lsf_attribute9,
104 	lsf_attribute10,
105 	lsf_attribute11,
106 	lsf_attribute12,
107 	lsf_attribute13,
108 	lsf_attribute14,
109 	lsf_attribute15,
110 	lsf_attribute16,
111 	lsf_attribute17,
112 	lsf_attribute18,
113 	lsf_attribute19,
114 	lsf_attribute20,
115 	lsf_attribute21,
116 	lsf_attribute22,
117 	lsf_attribute23,
118 	lsf_attribute24,
119 	lsf_attribute25,
120 	lsf_attribute26,
121 	lsf_attribute27,
122 	lsf_attribute28,
123 	lsf_attribute29,
124 	lsf_attribute30,
125 	object_version_number,
126 	use_overid_svc_dt_flag
127     from	ben_los_fctr
128     where	los_fctr_id = p_los_fctr_id;
129 --
130   l_proc	varchar2(72)	:= g_package||'api_updating';
131   l_fct_ret	boolean;
132 --
133 Begin
134   hr_utility.set_location('Entering:'||l_proc, 5);
135   --
136   If (
137 	p_los_fctr_id is null and
138 	p_object_version_number is null
139      ) Then
140     --
141     -- One of the primary key arguments is null therefore we must
142     -- set the returning function value to false
143     --
144     l_fct_ret := false;
145   Else
146     If (
147 	p_los_fctr_id = g_old_rec.los_fctr_id and
148 	p_object_version_number = g_old_rec.object_version_number
149        ) Then
150       hr_utility.set_location(l_proc, 10);
151       --
152       -- The g_old_rec is current therefore we must
153       -- set the returning function to true
154       --
155       l_fct_ret := true;
156     Else
157       --
158       -- Select the current row into g_old_rec
159       --
160       Open C_Sel1;
161       Fetch C_Sel1 Into g_old_rec;
162       If C_Sel1%notfound Then
163         Close C_Sel1;
164         --
165         -- The primary key is invalid therefore we must error
166         --
167         fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
168         fnd_message.raise_error;
169       End If;
170       Close C_Sel1;
171       If (p_object_version_number <> g_old_rec.object_version_number) Then
172         fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
173         fnd_message.raise_error;
174       End If;
175       hr_utility.set_location(l_proc, 15);
176       l_fct_ret := true;
177     End If;
178   End If;
179   hr_utility.set_location(' Leaving:'||l_proc, 20);
180   Return (l_fct_ret);
181 --
182 End api_updating;
183 --
184 -- ----------------------------------------------------------------------------
185 -- |---------------------------------< lck >----------------------------------|
186 -- ----------------------------------------------------------------------------
187 Procedure lck
188   (
189   p_los_fctr_id                        in number,
190   p_object_version_number              in number
191   ) is
192 --
193 -- Cursor selects the 'current' row from the HR Schema
194 --
195   Cursor C_Sel1 is
196     select 	los_fctr_id,
197 	name,
198 	business_group_id,
199 	los_det_cd,
200 	los_det_rl,
201 	mn_los_num,
202 	mx_los_num,
203 	no_mx_los_num_apls_flag,
204 	no_mn_los_num_apls_flag,
205 	rndg_cd,
206 	rndg_rl,
207 	los_dt_to_use_cd,
208 	los_dt_to_use_rl,
209 	los_uom,
210         los_calc_rl,
211         los_alt_val_to_use_cd,
212 	lsf_attribute_category,
213 	lsf_attribute1,
214 	lsf_attribute2,
215 	lsf_attribute3,
216 	lsf_attribute4,
217 	lsf_attribute5,
218 	lsf_attribute6,
219 	lsf_attribute7,
220 	lsf_attribute8,
221 	lsf_attribute9,
222 	lsf_attribute10,
223 	lsf_attribute11,
224 	lsf_attribute12,
225 	lsf_attribute13,
226 	lsf_attribute14,
227 	lsf_attribute15,
228 	lsf_attribute16,
229 	lsf_attribute17,
230 	lsf_attribute18,
231 	lsf_attribute19,
232 	lsf_attribute20,
233 	lsf_attribute21,
234 	lsf_attribute22,
235 	lsf_attribute23,
236 	lsf_attribute24,
237 	lsf_attribute25,
238 	lsf_attribute26,
239 	lsf_attribute27,
240 	lsf_attribute28,
241 	lsf_attribute29,
242 	lsf_attribute30,
243 	object_version_number,
244 	use_overid_svc_dt_flag
245     from	ben_los_fctr
246     where	los_fctr_id = p_los_fctr_id
247     for	update nowait;
248 --
249   l_proc	varchar2(72) := g_package||'lck';
250 --
251 Begin
252   hr_utility.set_location('Entering:'||l_proc, 5);
253   --
254   -- Add any mandatory argument checking here:
255   -- Example:
256   -- hr_api.mandatory_arg_error
257   --   (p_api_name       => l_proc,
258   --    p_argument       => 'object_version_number',
259   --    p_argument_value => p_object_version_number);
260   --
261   Open  C_Sel1;
262   Fetch C_Sel1 Into g_old_rec;
263   If C_Sel1%notfound then
264     Close C_Sel1;
265     --
266     -- The primary key is invalid therefore we must error
267     --
268     fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
269     fnd_message.raise_error;
270   End If;
271   Close C_Sel1;
272   If (p_object_version_number <> g_old_rec.object_version_number) Then
273         fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
274         fnd_message.raise_error;
275       End If;
276 --
277   hr_utility.set_location(' Leaving:'||l_proc, 10);
278 --
279 -- We need to trap the ORA LOCK exception
280 --
281 Exception
282   When HR_Api.Object_Locked then
283     --
284     -- The object is locked therefore we need to supply a meaningful
285     -- error message.
286     --
287     fnd_message.set_name('PAY', 'HR_7165_OBJECT_LOCKED');
288     fnd_message.set_token('TABLE_NAME', 'ben_los_fctr');
289     fnd_message.raise_error;
290 End lck;
291 --
292 -- ----------------------------------------------------------------------------
293 -- |-----------------------------< convert_args >-----------------------------|
294 -- ----------------------------------------------------------------------------
295 Function convert_args
296 	(
297 	p_los_fctr_id                   in number,
298 	p_name                          in varchar2,
299 	p_business_group_id             in number,
300 	p_los_det_cd                    in varchar2,
301 	p_los_det_rl                    in number,
302 	p_mn_los_num                    in number,
303 	p_mx_los_num                    in number,
304 	p_no_mx_los_num_apls_flag       in varchar2,
305 	p_no_mn_los_num_apls_flag       in varchar2,
306 	p_rndg_cd                       in varchar2,
307 	p_rndg_rl                       in number,
308 	p_los_dt_to_use_cd              in varchar2,
309 	p_los_dt_to_use_rl              in number,
310 	p_los_uom                       in varchar2,
311         p_los_calc_rl                   in number,
312         p_los_alt_val_to_use_cd         in varchar2,
313 	p_lsf_attribute_category        in varchar2,
314 	p_lsf_attribute1                in varchar2,
315 	p_lsf_attribute2                in varchar2,
316 	p_lsf_attribute3                in varchar2,
317 	p_lsf_attribute4                in varchar2,
318 	p_lsf_attribute5                in varchar2,
319 	p_lsf_attribute6                in varchar2,
320 	p_lsf_attribute7                in varchar2,
321 	p_lsf_attribute8                in varchar2,
322 	p_lsf_attribute9                in varchar2,
323 	p_lsf_attribute10               in varchar2,
324 	p_lsf_attribute11               in varchar2,
325 	p_lsf_attribute12               in varchar2,
326 	p_lsf_attribute13               in varchar2,
327 	p_lsf_attribute14               in varchar2,
328 	p_lsf_attribute15               in varchar2,
329 	p_lsf_attribute16               in varchar2,
330 	p_lsf_attribute17               in varchar2,
331 	p_lsf_attribute18               in varchar2,
332 	p_lsf_attribute19               in varchar2,
333 	p_lsf_attribute20               in varchar2,
334 	p_lsf_attribute21               in varchar2,
335 	p_lsf_attribute22               in varchar2,
336 	p_lsf_attribute23               in varchar2,
337 	p_lsf_attribute24               in varchar2,
338 	p_lsf_attribute25               in varchar2,
339 	p_lsf_attribute26               in varchar2,
340 	p_lsf_attribute27               in varchar2,
341 	p_lsf_attribute28               in varchar2,
342 	p_lsf_attribute29               in varchar2,
343 	p_lsf_attribute30               in varchar2,
344 	p_object_version_number         in number,
345 	p_use_overid_svc_dt_flag        in varchar2
346 	)
347 	Return g_rec_type is
348 --
349   l_rec	  g_rec_type;
350   l_proc  varchar2(72) := g_package||'convert_args';
351 --
352 Begin
353   --
354   hr_utility.set_location('Entering:'||l_proc, 5);
355   --
356   -- Convert arguments into local l_rec structure.
357   --
358   l_rec.los_fctr_id                      := p_los_fctr_id;
359   l_rec.name                             := p_name;
360   l_rec.business_group_id                := p_business_group_id;
361   l_rec.los_det_cd                       := p_los_det_cd;
362   l_rec.los_det_rl                       := p_los_det_rl;
363   l_rec.mn_los_num                       := p_mn_los_num;
364   l_rec.mx_los_num                       := p_mx_los_num;
365   l_rec.no_mx_los_num_apls_flag          := p_no_mx_los_num_apls_flag;
366   l_rec.no_mn_los_num_apls_flag          := p_no_mn_los_num_apls_flag;
367   l_rec.rndg_cd                          := p_rndg_cd;
368   l_rec.rndg_rl                          := p_rndg_rl;
369   l_rec.los_dt_to_use_cd                 := p_los_dt_to_use_cd;
370   l_rec.los_dt_to_use_rl                 := p_los_dt_to_use_rl;
371   l_rec.los_uom                          := p_los_uom;
372   l_rec.los_calc_rl                      := p_los_calc_rl;
373   l_rec.los_alt_val_to_use_cd            := p_los_alt_val_to_use_cd;
374   l_rec.lsf_attribute_category           := p_lsf_attribute_category;
375   l_rec.lsf_attribute1                   := p_lsf_attribute1;
376   l_rec.lsf_attribute2                   := p_lsf_attribute2;
377   l_rec.lsf_attribute3                   := p_lsf_attribute3;
378   l_rec.lsf_attribute4                   := p_lsf_attribute4;
379   l_rec.lsf_attribute5                   := p_lsf_attribute5;
380   l_rec.lsf_attribute6                   := p_lsf_attribute6;
381   l_rec.lsf_attribute7                   := p_lsf_attribute7;
382   l_rec.lsf_attribute8                   := p_lsf_attribute8;
383   l_rec.lsf_attribute9                   := p_lsf_attribute9;
384   l_rec.lsf_attribute10                  := p_lsf_attribute10;
385   l_rec.lsf_attribute11                  := p_lsf_attribute11;
386   l_rec.lsf_attribute12                  := p_lsf_attribute12;
387   l_rec.lsf_attribute13                  := p_lsf_attribute13;
388   l_rec.lsf_attribute14                  := p_lsf_attribute14;
389   l_rec.lsf_attribute15                  := p_lsf_attribute15;
390   l_rec.lsf_attribute16                  := p_lsf_attribute16;
391   l_rec.lsf_attribute17                  := p_lsf_attribute17;
392   l_rec.lsf_attribute18                  := p_lsf_attribute18;
393   l_rec.lsf_attribute19                  := p_lsf_attribute19;
394   l_rec.lsf_attribute20                  := p_lsf_attribute20;
395   l_rec.lsf_attribute21                  := p_lsf_attribute21;
396   l_rec.lsf_attribute22                  := p_lsf_attribute22;
397   l_rec.lsf_attribute23                  := p_lsf_attribute23;
398   l_rec.lsf_attribute24                  := p_lsf_attribute24;
399   l_rec.lsf_attribute25                  := p_lsf_attribute25;
400   l_rec.lsf_attribute26                  := p_lsf_attribute26;
401   l_rec.lsf_attribute27                  := p_lsf_attribute27;
402   l_rec.lsf_attribute28                  := p_lsf_attribute28;
403   l_rec.lsf_attribute29                  := p_lsf_attribute29;
404   l_rec.lsf_attribute30                  := p_lsf_attribute30;
405   l_rec.object_version_number            := p_object_version_number;
406   l_rec.use_overid_svc_dt_flag           := p_use_overid_svc_dt_flag;
407   --
408   -- Return the plsql record structure.
409   --
410   hr_utility.set_location(' Leaving:'||l_proc, 10);
411   Return(l_rec);
412 --
413 End convert_args;
414 --
415 end ben_lsf_shd;