[Home] [Help]
PACKAGE BODY: APPS.BEN_PCP_SHD
Source
1 Package Body ben_pcp_shd as
2 /* $Header: bepcprhi.pkb 115.13 2002/12/16 12:00:12 vsethi noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' ben_pcp_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 = 'BEN_PL_PCP_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 = 'BEN_PL_PCP_TYP_FK2') Then
38 ben_utility.child_exists_error(p_table_name => 'BEN_PL_PCP_TYP');
39 Else
40 fnd_message.set_name('PAY', 'HR_7877_API_INVALID_CONSTRAINT');
41 fnd_message.set_token('PROCEDURE', l_proc);
42 fnd_message.set_token('CONSTRAINT_NAME', p_constraint_name);
43 fnd_message.raise_error;
44 End If;
45 --
46 End constraint_error;
47 --
48 -- ----------------------------------------------------------------------------
49 -- |-----------------------------< api_updating >-----------------------------|
50 -- ----------------------------------------------------------------------------
51 Function api_updating
52 (p_pl_pcp_id in number
53 ,p_object_version_number in number
54 )
55 Return Boolean Is
56 --
57 --
58 -- Cursor selects the 'current' row from the HR Schema
59 --
60 Cursor C_Sel1 is
61 select
62 pl_pcp_id
63 ,pl_id
64 ,business_group_id
65 ,pcp_strt_dt_cd
66 ,pcp_dsgn_cd
67 ,pcp_dpnt_dsgn_cd
68 ,pcp_rpstry_flag
69 ,pcp_can_keep_flag
70 ,pcp_radius
71 ,pcp_radius_uom
72 ,pcp_radius_warn_flag
73 ,pcp_num_chgs
74 ,pcp_num_chgs_uom
75 ,pcp_attribute_category
76 ,pcp_attribute1
77 ,pcp_attribute2
78 ,pcp_attribute3
79 ,pcp_attribute4
80 ,pcp_attribute5
81 ,pcp_attribute6
82 ,pcp_attribute7
83 ,pcp_attribute8
84 ,pcp_attribute9
85 ,pcp_attribute10
86 ,pcp_attribute11
87 ,pcp_attribute12
88 ,pcp_attribute13
89 ,pcp_attribute14
90 ,pcp_attribute15
91 ,pcp_attribute16
92 ,pcp_attribute17
93 ,pcp_attribute18
94 ,pcp_attribute19
95 ,pcp_attribute20
96 ,pcp_attribute21
97 ,pcp_attribute22
98 ,pcp_attribute23
99 ,pcp_attribute24
100 ,pcp_attribute25
101 ,pcp_attribute26
102 ,pcp_attribute27
103 ,pcp_attribute28
104 ,pcp_attribute29
105 ,pcp_attribute30
106 ,object_version_number
107 from ben_pl_pcp
108 where pl_pcp_id = p_pl_pcp_id;
109 --
110 l_fct_ret boolean;
111 --
112 Begin
113 --
114 If (p_pl_pcp_id is null and
115 p_object_version_number is null
116 ) Then
117 --
118 -- One of the primary key arguments is null therefore we must
119 -- set the returning function value to false
120 --
121 l_fct_ret := false;
122 Else
123 If (p_pl_pcp_id
124 = ben_pcp_shd.g_old_rec.pl_pcp_id and
125 p_object_version_number
126 = ben_pcp_shd.g_old_rec.object_version_number
127 ) Then
128 --
129 -- The g_old_rec is current therefore we must
130 -- set the returning function to true
131 --
132 l_fct_ret := true;
133 Else
134 --
135 -- Select the current row into g_old_rec
136 --
137 Open C_Sel1;
138 Fetch C_Sel1 Into ben_pcp_shd.g_old_rec;
139 If C_Sel1%notfound Then
140 Close C_Sel1;
141 --
142 -- The primary key is invalid therefore we must error
143 --
144 fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
145 fnd_message.raise_error;
146 End If;
147 Close C_Sel1;
148 If (p_object_version_number
149 <> ben_pcp_shd.g_old_rec.object_version_number) Then
150 fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
151 fnd_message.raise_error;
152 End If;
153 l_fct_ret := true;
154 End If;
155 End If;
156 Return (l_fct_ret);
157 --
158 End api_updating;
159 --
160 -- ----------------------------------------------------------------------------
161 -- |---------------------------------< lck >----------------------------------|
162 -- ----------------------------------------------------------------------------
163 Procedure lck
164 (p_pl_pcp_id in number
165 ,p_object_version_number in number
166 ) is
167 --
168 -- Cursor selects the 'current' row from the HR Schema
169 --
170 Cursor C_Sel1 is
171 select
172 pl_pcp_id
173 ,pl_id
174 ,business_group_id
175 ,pcp_strt_dt_cd
176 ,pcp_dsgn_cd
177 ,pcp_dpnt_dsgn_cd
178 ,pcp_rpstry_flag
179 ,pcp_can_keep_flag
180 ,pcp_radius
181 ,pcp_radius_uom
182 ,pcp_radius_warn_flag
183 ,pcp_num_chgs
184 ,pcp_num_chgs_uom
185 ,pcp_attribute_category
186 ,pcp_attribute1
187 ,pcp_attribute2
188 ,pcp_attribute3
189 ,pcp_attribute4
190 ,pcp_attribute5
191 ,pcp_attribute6
192 ,pcp_attribute7
193 ,pcp_attribute8
194 ,pcp_attribute9
195 ,pcp_attribute10
196 ,pcp_attribute11
197 ,pcp_attribute12
198 ,pcp_attribute13
199 ,pcp_attribute14
200 ,pcp_attribute15
201 ,pcp_attribute16
202 ,pcp_attribute17
203 ,pcp_attribute18
204 ,pcp_attribute19
205 ,pcp_attribute20
206 ,pcp_attribute21
207 ,pcp_attribute22
208 ,pcp_attribute23
209 ,pcp_attribute24
210 ,pcp_attribute25
211 ,pcp_attribute26
212 ,pcp_attribute27
213 ,pcp_attribute28
214 ,pcp_attribute29
215 ,pcp_attribute30
216 ,object_version_number
217 from ben_pl_pcp
218 where pl_pcp_id = p_pl_pcp_id
219 for update nowait;
220 --
221 l_proc varchar2(72) := g_package||'lck';
222 --
223 Begin
224 hr_utility.set_location('Entering:'||l_proc, 5);
225 --
226 -- hr_api.mandatory_arg_error
227 -- (p_api_name => l_proc
228 -- ,p_argument => 'PL_PCP_ID'
229 -- ,p_argument_value => p_pl_pcp_id
230 -- );
231 --
232 Open C_Sel1;
233 Fetch C_Sel1 Into ben_pcp_shd.g_old_rec;
234 If C_Sel1%notfound then
235 Close C_Sel1;
236 --
237 -- The primary key is invalid therefore we must error
238 --
239 fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
240 fnd_message.raise_error;
241 End If;
242 Close C_Sel1;
243 If (p_object_version_number
244 <> ben_pcp_shd.g_old_rec.object_version_number) Then
245 fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
246 fnd_message.raise_error;
247 End If;
248 --
249 hr_utility.set_location(' Leaving:'||l_proc, 10);
250 --
251 -- We need to trap the ORA LOCK exception
252 --
253 Exception
254 When HR_Api.Object_Locked then
255 --
256 -- The object is locked therefore we need to supply a meaningful
257 -- error message.
258 --
259 fnd_message.set_name('PAY', 'HR_7165_OBJECT_LOCKED');
260 fnd_message.set_token('TABLE_NAME', 'ben_pl_pcp');
261 fnd_message.raise_error;
262 End lck;
263 --
264 -- ----------------------------------------------------------------------------
265 -- |-----------------------------< convert_args >-----------------------------|
266 -- ----------------------------------------------------------------------------
267 Function convert_args
268 (p_pl_pcp_id in number
269 ,p_pl_id in number
270 ,p_business_group_id in number
271 ,p_pcp_strt_dt_cd in varchar2
272 ,p_pcp_dsgn_cd in varchar2
273 ,p_pcp_dpnt_dsgn_cd in varchar2
274 ,p_pcp_rpstry_flag in varchar2
275 ,p_pcp_can_keep_flag in varchar2
276 ,p_pcp_radius in number
277 ,p_pcp_radius_uom in varchar2
278 ,p_pcp_radius_warn_flag in varchar2
279 ,p_pcp_num_chgs in number
280 ,p_pcp_num_chgs_uom in varchar2
281 ,p_pcp_attribute_category in varchar2
282 ,p_pcp_attribute1 in varchar2
283 ,p_pcp_attribute2 in varchar2
284 ,p_pcp_attribute3 in varchar2
285 ,p_pcp_attribute4 in varchar2
286 ,p_pcp_attribute5 in varchar2
287 ,p_pcp_attribute6 in varchar2
288 ,p_pcp_attribute7 in varchar2
289 ,p_pcp_attribute8 in varchar2
290 ,p_pcp_attribute9 in varchar2
291 ,p_pcp_attribute10 in varchar2
292 ,p_pcp_attribute11 in varchar2
293 ,p_pcp_attribute12 in varchar2
294 ,p_pcp_attribute13 in varchar2
295 ,p_pcp_attribute14 in varchar2
296 ,p_pcp_attribute15 in varchar2
297 ,p_pcp_attribute16 in varchar2
298 ,p_pcp_attribute17 in varchar2
299 ,p_pcp_attribute18 in varchar2
300 ,p_pcp_attribute19 in varchar2
301 ,p_pcp_attribute20 in varchar2
302 ,p_pcp_attribute21 in varchar2
303 ,p_pcp_attribute22 in varchar2
304 ,p_pcp_attribute23 in varchar2
305 ,p_pcp_attribute24 in varchar2
306 ,p_pcp_attribute25 in varchar2
307 ,p_pcp_attribute26 in varchar2
308 ,p_pcp_attribute27 in varchar2
309 ,p_pcp_attribute28 in varchar2
310 ,p_pcp_attribute29 in varchar2
311 ,p_pcp_attribute30 in varchar2
312 ,p_object_version_number in number
313 )
314 Return g_rec_type is
315 --
316 l_rec g_rec_type;
317 --
318 Begin
319 --
320 -- Convert arguments into local l_rec structure.
321 --
322 l_rec.pl_pcp_id := p_pl_pcp_id;
323 l_rec.pl_id := p_pl_id;
324 l_rec.business_group_id := p_business_group_id;
325 l_rec.pcp_strt_dt_cd := p_pcp_strt_dt_cd;
326 l_rec.pcp_dsgn_cd := p_pcp_dsgn_cd;
327 l_rec.pcp_dpnt_dsgn_cd := p_pcp_dpnt_dsgn_cd;
328 l_rec.pcp_rpstry_flag := p_pcp_rpstry_flag;
329 l_rec.pcp_can_keep_flag := p_pcp_can_keep_flag;
330 l_rec.pcp_radius := p_pcp_radius;
331 l_rec.pcp_radius_uom := p_pcp_radius_uom;
332 l_rec.pcp_radius_warn_flag := p_pcp_radius_warn_flag;
333 l_rec.pcp_num_chgs := p_pcp_num_chgs;
334 l_rec.pcp_num_chgs_uom := p_pcp_num_chgs_uom;
335 l_rec.pcp_attribute_category := p_pcp_attribute_category;
336 l_rec.pcp_attribute1 := p_pcp_attribute1;
337 l_rec.pcp_attribute2 := p_pcp_attribute2;
338 l_rec.pcp_attribute3 := p_pcp_attribute3;
339 l_rec.pcp_attribute4 := p_pcp_attribute4;
340 l_rec.pcp_attribute5 := p_pcp_attribute5;
341 l_rec.pcp_attribute6 := p_pcp_attribute6;
342 l_rec.pcp_attribute7 := p_pcp_attribute7;
343 l_rec.pcp_attribute8 := p_pcp_attribute8;
344 l_rec.pcp_attribute9 := p_pcp_attribute9;
345 l_rec.pcp_attribute10 := p_pcp_attribute10;
346 l_rec.pcp_attribute11 := p_pcp_attribute11;
347 l_rec.pcp_attribute12 := p_pcp_attribute12;
348 l_rec.pcp_attribute13 := p_pcp_attribute13;
349 l_rec.pcp_attribute14 := p_pcp_attribute14;
350 l_rec.pcp_attribute15 := p_pcp_attribute15;
351 l_rec.pcp_attribute16 := p_pcp_attribute16;
352 l_rec.pcp_attribute17 := p_pcp_attribute17;
353 l_rec.pcp_attribute18 := p_pcp_attribute18;
354 l_rec.pcp_attribute19 := p_pcp_attribute19;
355 l_rec.pcp_attribute20 := p_pcp_attribute20;
356 l_rec.pcp_attribute21 := p_pcp_attribute21;
357 l_rec.pcp_attribute22 := p_pcp_attribute22;
358 l_rec.pcp_attribute23 := p_pcp_attribute23;
359 l_rec.pcp_attribute24 := p_pcp_attribute24;
360 l_rec.pcp_attribute25 := p_pcp_attribute25;
361 l_rec.pcp_attribute26 := p_pcp_attribute26;
362 l_rec.pcp_attribute27 := p_pcp_attribute27;
363 l_rec.pcp_attribute28 := p_pcp_attribute28;
364 l_rec.pcp_attribute29 := p_pcp_attribute29;
365 l_rec.pcp_attribute30 := p_pcp_attribute30;
366 l_rec.object_version_number := p_object_version_number;
367 --
368 -- Return the plsql record structure.
369 --
370 Return(l_rec);
371 --
372 End convert_args;
373 --
374 end ben_pcp_shd;