[Home] [Help]
PACKAGE BODY: APPS.PQH_CRD_SHD
Source
1 Package Body pqh_crd_shd as
2 /* $Header: pqcrdrhi.pkb 120.0 2005/05/29 01:45 appldev noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' pqh_crd_shd.'; -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |---------------------------< constraint_error >---------------------------|
12 -- ----------------------------------------------------------------------------
13 Procedure constraint_error
14 (p_constraint_name in all_constraints.constraint_name%TYPE
15 ) Is
16 --
17 l_proc varchar2(72) := g_package||'constraint_error';
18 --
19 Begin
20 --
21 If (p_constraint_name = 'PQH_CRITERIA_RATE_DEFN_FK1') Then
22 fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
23 fnd_message.set_token('PROCEDURE', l_proc);
24 fnd_message.set_token('STEP','5');
25 fnd_message.raise_error;
26 ElsIf (p_constraint_name = 'PQH_CRITERIA_RATE_DEFN_UK1') Then
27 fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
28 fnd_message.set_token('PROCEDURE', l_proc);
29 fnd_message.set_token('STEP','10');
30 fnd_message.raise_error;
31 ElsIf (p_constraint_name = 'PQH_CRITERIA_RATE_DEFN_UK2') Then
32 fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
33 fnd_message.set_token('PROCEDURE', l_proc);
34 fnd_message.set_token('STEP','15');
35 fnd_message.raise_error;
36 ElsIf (p_constraint_name = 'PQH_CRITERIA_RATE_DEFN_PK') 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','20');
40 fnd_message.raise_error;
41 Else
42 fnd_message.set_name('PAY', 'HR_7877_API_INVALID_CONSTRAINT');
43 fnd_message.set_token('PROCEDURE', l_proc);
44 fnd_message.set_token('CONSTRAINT_NAME', p_constraint_name);
45 fnd_message.raise_error;
46 End If;
47 --
48 End constraint_error;
49 --
50 -- ----------------------------------------------------------------------------
51 -- |-----------------------------< api_updating >-----------------------------|
52 -- ----------------------------------------------------------------------------
53 Function api_updating
54 (p_criteria_rate_defn_id in number
55 ,p_object_version_number in number
56 )
57 Return Boolean Is
58 --
59 --
60 -- Cursor selects the 'current' row from the HR Schema
61 --
62 Cursor C_Sel1 is
63 select
64 criteria_rate_defn_id
65 ,short_name
66 ,uom
67 ,currency_code
68 ,reference_period_cd
69 ,define_max_rate_flag
70 ,define_min_rate_flag
71 ,define_mid_rate_flag
72 ,define_std_rate_flag
73 ,rate_calc_cd
74 ,rate_calc_rule
75 ,preferential_rate_cd
76 ,preferential_rate_rule
77 ,rounding_cd
78 ,rounding_rule
79 ,business_group_id
80 ,legislation_code
81 ,attribute_category
82 ,attribute1
83 ,attribute2
84 ,attribute3
85 ,attribute4
86 ,attribute5
87 ,attribute6
88 ,attribute7
89 ,attribute8
90 ,attribute9
91 ,attribute10
92 ,attribute11
93 ,attribute12
94 ,attribute13
95 ,attribute14
96 ,attribute15
97 ,attribute16
98 ,attribute17
99 ,attribute18
100 ,attribute19
101 ,attribute20
102 ,attribute21
103 ,attribute22
104 ,attribute23
105 ,attribute24
106 ,attribute25
107 ,attribute26
108 ,attribute27
109 ,attribute28
110 ,attribute29
111 ,attribute30
112 ,object_version_number
113 from pqh_criteria_rate_defn
114 where criteria_rate_defn_id = p_criteria_rate_defn_id;
115 --
116 l_fct_ret boolean;
117 --
118 Begin
119 --
120 If (p_criteria_rate_defn_id is null and
121 p_object_version_number is null
122 ) Then
123 --
124 -- One of the primary key arguments is null therefore we must
125 -- set the returning function value to false
126 --
127 l_fct_ret := false;
128 Else
129 If (p_criteria_rate_defn_id
130 = pqh_crd_shd.g_old_rec.criteria_rate_defn_id and
131 p_object_version_number
132 = pqh_crd_shd.g_old_rec.object_version_number
133 ) Then
134 --
135 -- The g_old_rec is current therefore we must
136 -- set the returning function to true
137 --
138 l_fct_ret := true;
139 Else
140 --
141 -- Select the current row into g_old_rec
142 --
143 Open C_Sel1;
144 Fetch C_Sel1 Into pqh_crd_shd.g_old_rec;
145 If C_Sel1%notfound Then
146 Close C_Sel1;
147 --
148 -- The primary key is invalid therefore we must error
149 --
150 fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
151 fnd_message.raise_error;
152 End If;
153 Close C_Sel1;
154 If (p_object_version_number
155 <> pqh_crd_shd.g_old_rec.object_version_number) Then
156 fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
157 fnd_message.raise_error;
158 End If;
159 l_fct_ret := true;
160 End If;
161 End If;
162 Return (l_fct_ret);
163 --
164 End api_updating;
165 --
166 -- ----------------------------------------------------------------------------
167 -- |---------------------------------< lck >----------------------------------|
168 -- ----------------------------------------------------------------------------
169 Procedure lck
170 (p_criteria_rate_defn_id in number
171 ,p_object_version_number in number
172 ) is
173 --
174 -- Cursor selects the 'current' row from the HR Schema
175 --
176 Cursor C_Sel1 is
177 select
178 criteria_rate_defn_id
179 ,short_name
180 ,uom
181 ,currency_code
182 ,reference_period_cd
183 ,define_max_rate_flag
184 ,define_min_rate_flag
185 ,define_mid_rate_flag
186 ,define_std_rate_flag
187 ,rate_calc_cd
188 ,rate_calc_rule
189 ,preferential_rate_cd
190 ,preferential_rate_rule
191 ,rounding_cd
192 ,rounding_rule
193 ,business_group_id
194 ,legislation_code
195 ,attribute_category
196 ,attribute1
197 ,attribute2
198 ,attribute3
199 ,attribute4
200 ,attribute5
201 ,attribute6
202 ,attribute7
203 ,attribute8
204 ,attribute9
205 ,attribute10
206 ,attribute11
207 ,attribute12
208 ,attribute13
209 ,attribute14
210 ,attribute15
211 ,attribute16
212 ,attribute17
213 ,attribute18
214 ,attribute19
215 ,attribute20
216 ,attribute21
217 ,attribute22
218 ,attribute23
219 ,attribute24
220 ,attribute25
221 ,attribute26
222 ,attribute27
223 ,attribute28
224 ,attribute29
225 ,attribute30
226 ,object_version_number
227 from pqh_criteria_rate_defn
228 where criteria_rate_defn_id = p_criteria_rate_defn_id
229 for update nowait;
230 --
231 l_proc varchar2(72) := g_package||'lck';
232 --
233 Begin
234 hr_utility.set_location('Entering:'||l_proc, 5);
235 --
236 hr_api.mandatory_arg_error
237 (p_api_name => l_proc
238 ,p_argument => 'CRITERIA_RATE_DEFN_ID'
239 ,p_argument_value => p_criteria_rate_defn_id
240 );
241 hr_utility.set_location(l_proc,6);
242 hr_api.mandatory_arg_error
243 (p_api_name => l_proc
244 ,p_argument => 'OBJECT_VERSION_NUMBER'
245 ,p_argument_value => p_object_version_number
246 );
247 --
248 Open C_Sel1;
249 Fetch C_Sel1 Into pqh_crd_shd.g_old_rec;
250 If C_Sel1%notfound then
251 Close C_Sel1;
252 --
253 -- The primary key is invalid therefore we must error
254 --
255 fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
256 fnd_message.raise_error;
257 End If;
258 Close C_Sel1;
259 If (p_object_version_number
260 <> pqh_crd_shd.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', 'pqh_criteria_rate_defn');
277 fnd_message.raise_error;
278 End lck;
279 --
280 -- ----------------------------------------------------------------------------
281 -- |-----------------------------< convert_args >-----------------------------|
282 -- ----------------------------------------------------------------------------
283 Function convert_args
284 (p_criteria_rate_defn_id in number
285 ,p_short_name in varchar2
286 ,p_uom in varchar2
287 ,p_currency_code in varchar2
288 ,p_reference_period_cd in varchar2
289 ,p_define_max_rate_flag in varchar2
290 ,p_define_min_rate_flag in varchar2
291 ,p_define_mid_rate_flag in varchar2
292 ,p_define_std_rate_flag in varchar2
293 ,p_rate_calc_cd in varchar2
294 ,p_rate_calc_rule in number
295 ,p_preferential_rate_cd in varchar2
296 ,p_preferential_rate_rule in number
297 ,p_rounding_cd in varchar2
298 ,p_rounding_rule in number
299 ,p_business_group_id in number
300 ,p_legislation_code in varchar2
301 ,p_attribute_category in varchar2
302 ,p_attribute1 in varchar2
303 ,p_attribute2 in varchar2
304 ,p_attribute3 in varchar2
305 ,p_attribute4 in varchar2
306 ,p_attribute5 in varchar2
307 ,p_attribute6 in varchar2
308 ,p_attribute7 in varchar2
309 ,p_attribute8 in varchar2
310 ,p_attribute9 in varchar2
311 ,p_attribute10 in varchar2
312 ,p_attribute11 in varchar2
313 ,p_attribute12 in varchar2
314 ,p_attribute13 in varchar2
315 ,p_attribute14 in varchar2
316 ,p_attribute15 in varchar2
317 ,p_attribute16 in varchar2
318 ,p_attribute17 in varchar2
319 ,p_attribute18 in varchar2
320 ,p_attribute19 in varchar2
321 ,p_attribute20 in varchar2
322 ,p_attribute21 in varchar2
323 ,p_attribute22 in varchar2
324 ,p_attribute23 in varchar2
325 ,p_attribute24 in varchar2
326 ,p_attribute25 in varchar2
327 ,p_attribute26 in varchar2
328 ,p_attribute27 in varchar2
329 ,p_attribute28 in varchar2
330 ,p_attribute29 in varchar2
331 ,p_attribute30 in varchar2
332 ,p_object_version_number in number
333 )
334 Return g_rec_type is
335 --
336 l_rec g_rec_type;
337 --
338 Begin
339 --
340 -- Convert arguments into local l_rec structure.
341 --
342 l_rec.criteria_rate_defn_id := p_criteria_rate_defn_id;
343 l_rec.short_name := p_short_name;
344 l_rec.uom := p_uom;
345 l_rec.currency_code := p_currency_code;
346 l_rec.reference_period_cd := p_reference_period_cd;
347 l_rec.define_max_rate_flag := p_define_max_rate_flag;
348 l_rec.define_min_rate_flag := p_define_min_rate_flag;
349 l_rec.define_mid_rate_flag := p_define_mid_rate_flag;
350 l_rec.define_std_rate_flag := p_define_std_rate_flag;
351 l_rec.rate_calc_cd := p_rate_calc_cd;
352 l_rec.rate_calc_rule := p_rate_calc_rule;
353 l_rec.preferential_rate_cd := p_preferential_rate_cd;
354 l_rec.preferential_rate_rule := p_preferential_rate_rule;
355 l_rec.rounding_cd := p_rounding_cd;
356 l_rec.rounding_rule := p_rounding_rule;
357 l_rec.business_group_id := p_business_group_id;
358 l_rec.legislation_code := p_legislation_code;
359 l_rec.attribute_category := p_attribute_category;
360 l_rec.attribute1 := p_attribute1;
361 l_rec.attribute2 := p_attribute2;
362 l_rec.attribute3 := p_attribute3;
363 l_rec.attribute4 := p_attribute4;
364 l_rec.attribute5 := p_attribute5;
365 l_rec.attribute6 := p_attribute6;
366 l_rec.attribute7 := p_attribute7;
367 l_rec.attribute8 := p_attribute8;
368 l_rec.attribute9 := p_attribute9;
369 l_rec.attribute10 := p_attribute10;
370 l_rec.attribute11 := p_attribute11;
371 l_rec.attribute12 := p_attribute12;
372 l_rec.attribute13 := p_attribute13;
373 l_rec.attribute14 := p_attribute14;
374 l_rec.attribute15 := p_attribute15;
375 l_rec.attribute16 := p_attribute16;
376 l_rec.attribute17 := p_attribute17;
377 l_rec.attribute18 := p_attribute18;
378 l_rec.attribute19 := p_attribute19;
379 l_rec.attribute20 := p_attribute20;
380 l_rec.attribute21 := p_attribute21;
381 l_rec.attribute22 := p_attribute22;
382 l_rec.attribute23 := p_attribute23;
383 l_rec.attribute24 := p_attribute24;
384 l_rec.attribute25 := p_attribute25;
385 l_rec.attribute26 := p_attribute26;
386 l_rec.attribute27 := p_attribute27;
387 l_rec.attribute28 := p_attribute28;
388 l_rec.attribute29 := p_attribute29;
389 l_rec.attribute30 := p_attribute30;
390 l_rec.object_version_number := p_object_version_number;
391 --
392 -- Return the plsql record structure.
393 --
394 Return(l_rec);
395 --
396 End convert_args;
397 --
398 end pqh_crd_shd;