[Home] [Help]
PACKAGE BODY: APPS.IRC_INP_SHD
Source
1 Package Body irc_inp_shd as
2 /* $Header: irinprhi.pkb 120.2 2006/02/23 15:36:24 gjaggava noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' irc_inp_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 = 'IRC_NOTIFICATION_PREFS_FK1') 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 = 'IRC_NOTIFICATION_PREFS_PK') Then
38 fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
39 fnd_message.set_token('PROCEDURE', l_proc);
40 fnd_message.set_token('STEP','10');
41 fnd_message.raise_error;
42 Else
43 fnd_message.set_name('PAY', 'HR_7877_API_INVALID_CONSTRAINT');
44 fnd_message.set_token('PROCEDURE', l_proc);
45 fnd_message.set_token('CONSTRAINT_NAME', p_constraint_name);
46 fnd_message.raise_error;
47 End If;
48 --
49 End constraint_error;
50 --
51 -- ----------------------------------------------------------------------------
52 -- |-----------------------------< api_updating >-----------------------------|
53 -- ----------------------------------------------------------------------------
54 Function api_updating
55 (p_notification_preference_id in number
56 ,p_object_version_number in number
57 )
58 Return Boolean Is
59 --
60 --
61 -- Cursor selects the 'current' row from the HR Schema
62 --
63 Cursor C_Sel1 is
64 select
65 party_id
66 ,notification_preference_id
67 ,person_id
68 ,matching_jobs
69 ,matching_job_freq
70 ,attribute_category
71 ,receive_info_mail
72 ,allow_access
73 ,address_id
74 ,attribute1
75 ,attribute2
76 ,attribute3
77 ,attribute4
78 ,attribute5
79 ,attribute6
80 ,attribute7
81 ,attribute8
82 ,attribute9
83 ,attribute10
84 ,attribute11
85 ,attribute12
86 ,attribute13
87 ,attribute14
88 ,attribute15
89 ,attribute16
90 ,attribute17
91 ,attribute18
92 ,attribute19
93 ,attribute20
94 ,attribute21
95 ,attribute22
96 ,attribute23
97 ,attribute24
98 ,attribute25
99 ,attribute26
100 ,attribute27
101 ,attribute28
102 ,attribute29
103 ,attribute30
104 ,object_version_number
105 ,agency_id
106 ,attempt_id
107 from irc_notification_preferences
108 where notification_preference_id = p_notification_preference_id;
109 --
110 l_fct_ret boolean;
111 --
112 Begin
113 --
114 If (p_object_version_number is null
115 ) Then
116 --
117 -- One of the primary key arguments is null therefore we must
118 -- set the returning function value to false
119 --
120 l_fct_ret := false;
121 Else
122 If (p_notification_preference_id
123 = irc_inp_shd.g_old_rec.notification_preference_id and
124 p_object_version_number
125 = irc_inp_shd.g_old_rec.object_version_number
126 ) Then
127 --
128 -- The g_old_rec is current therefore we must
129 -- set the returning function to true
130 --
131 l_fct_ret := true;
132 Else
133 --
134 -- Select the current row into g_old_rec
135 --
136 Open C_Sel1;
137 Fetch C_Sel1 Into irc_inp_shd.g_old_rec;
138 If C_Sel1%notfound Then
139 Close C_Sel1;
140 --
141 -- The primary key is invalid therefore we must error
142 --
143 fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
144 fnd_message.raise_error;
145 End If;
146 Close C_Sel1;
147 If (p_object_version_number
148 <> irc_inp_shd.g_old_rec.object_version_number) Then
149 fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
150 fnd_message.raise_error;
151 End If;
152 l_fct_ret := true;
153 End If;
154 End If;
155 Return (l_fct_ret);
156 --
157 End api_updating;
158 --
159 -- ----------------------------------------------------------------------------
160 -- |---------------------------------< lck >----------------------------------|
161 -- ----------------------------------------------------------------------------
162 Procedure lck
163 (p_notification_preference_id in number
164 ,p_object_version_number in number
165 ) is
166 --
167 -- Cursor selects the 'current' row from the HR Schema
168 --
169 Cursor C_Sel1 is
170 select
171 party_id
172 ,notification_preference_id
173 ,person_id
174 ,matching_jobs
175 ,matching_job_freq
176 ,attribute_category
177 ,receive_info_mail
178 ,allow_access
179 ,address_id
180 ,attribute1
181 ,attribute2
182 ,attribute3
183 ,attribute4
184 ,attribute5
185 ,attribute6
186 ,attribute7
187 ,attribute8
188 ,attribute9
189 ,attribute10
190 ,attribute11
191 ,attribute12
192 ,attribute13
193 ,attribute14
194 ,attribute15
195 ,attribute16
196 ,attribute17
197 ,attribute18
198 ,attribute19
199 ,attribute20
200 ,attribute21
201 ,attribute22
202 ,attribute23
203 ,attribute24
204 ,attribute25
205 ,attribute26
206 ,attribute27
207 ,attribute28
208 ,attribute29
209 ,attribute30
210 ,object_version_number
211 ,agency_id
212 ,attempt_id
213 from irc_notification_preferences
214 where notification_preference_id = p_notification_preference_id
215 for update nowait;
216 --
217 l_proc varchar2(72) := g_package||'lck';
218 --
219 Begin
220 hr_utility.set_location('Entering:'||l_proc, 5);
221 --
222 hr_api.mandatory_arg_error
223 (p_api_name => l_proc
224 ,p_argument => 'NOTIFICATION_PREFERENCE_ID'
225 ,p_argument_value => p_notification_preference_id
226 );
227 hr_utility.set_location(l_proc,6);
228 hr_api.mandatory_arg_error
229 (p_api_name => l_proc
230 ,p_argument => 'OBJECT_VERSION_NUMBER'
231 ,p_argument_value => p_object_version_number
232 );
233 --
234 Open C_Sel1;
235 Fetch C_Sel1 Into irc_inp_shd.g_old_rec;
236 If C_Sel1%notfound then
237 Close C_Sel1;
238 --
239 -- The primary key is invalid therefore we must error
240 --
241 fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
242 fnd_message.raise_error;
243 End If;
244 Close C_Sel1;
245 If (p_object_version_number
246 <> irc_inp_shd.g_old_rec.object_version_number) Then
247 fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
248 fnd_message.raise_error;
249 End If;
250 --
251 hr_utility.set_location(' Leaving:'||l_proc, 10);
252 --
253 -- We need to trap the ORA LOCK exception
254 --
255 Exception
256 When HR_Api.Object_Locked then
257 --
258 -- The object is locked therefore we need to supply a meaningful
259 -- error message.
260 --
261 fnd_message.set_name('PAY', 'HR_7165_OBJECT_LOCKED');
262 fnd_message.set_token('TABLE_NAME', 'irc_notification_preferences');
263 fnd_message.raise_error;
264 End lck;
265 --
266 -- ----------------------------------------------------------------------------
267 -- |-----------------------------< convert_args >-----------------------------|
268 -- ----------------------------------------------------------------------------
269 Function convert_args
270 (p_party_id in number
271 ,p_person_id in number
272 ,p_notification_preference_id in number
273 ,p_matching_jobs in varchar2
274 ,p_matching_job_freq in varchar2
275 ,p_attribute_category in varchar2
276 ,p_receive_info_mail in varchar2
277 ,p_allow_access in varchar2
278 ,p_address_id in number
279 ,p_attribute1 in varchar2
280 ,p_attribute2 in varchar2
281 ,p_attribute3 in varchar2
282 ,p_attribute4 in varchar2
283 ,p_attribute5 in varchar2
284 ,p_attribute6 in varchar2
285 ,p_attribute7 in varchar2
286 ,p_attribute8 in varchar2
287 ,p_attribute9 in varchar2
288 ,p_attribute10 in varchar2
289 ,p_attribute11 in varchar2
290 ,p_attribute12 in varchar2
291 ,p_attribute13 in varchar2
292 ,p_attribute14 in varchar2
293 ,p_attribute15 in varchar2
294 ,p_attribute16 in varchar2
295 ,p_attribute17 in varchar2
296 ,p_attribute18 in varchar2
297 ,p_attribute19 in varchar2
298 ,p_attribute20 in varchar2
299 ,p_attribute21 in varchar2
300 ,p_attribute22 in varchar2
301 ,p_attribute23 in varchar2
302 ,p_attribute24 in varchar2
303 ,p_attribute25 in varchar2
304 ,p_attribute26 in varchar2
305 ,p_attribute27 in varchar2
306 ,p_attribute28 in varchar2
307 ,p_attribute29 in varchar2
308 ,p_attribute30 in varchar2
309 ,p_object_version_number in number
310 ,p_agency_id in number
311 ,p_attempt_id in number
312 )
313 Return g_rec_type is
314 --
315 l_rec g_rec_type;
316 --
317 Begin
318 --
319 -- Convert arguments into local l_rec structure.
320 --
321 l_rec.notification_preference_id := p_notification_preference_id;
322 l_rec.person_id := p_person_id;
323 l_rec.party_id := p_party_id;
324 l_rec.matching_jobs := p_matching_jobs;
325 l_rec.matching_job_freq := p_matching_job_freq;
326 l_rec.attribute_category := p_attribute_category;
327 l_rec.receive_info_mail := p_receive_info_mail;
328 l_rec.allow_access := p_allow_access;
329 l_rec.address_id := p_address_id;
330 l_rec.attribute1 := p_attribute1;
331 l_rec.attribute2 := p_attribute2;
332 l_rec.attribute3 := p_attribute3;
333 l_rec.attribute4 := p_attribute4;
334 l_rec.attribute5 := p_attribute5;
335 l_rec.attribute6 := p_attribute6;
336 l_rec.attribute7 := p_attribute7;
337 l_rec.attribute8 := p_attribute8;
338 l_rec.attribute9 := p_attribute9;
339 l_rec.attribute10 := p_attribute10;
340 l_rec.attribute11 := p_attribute11;
341 l_rec.attribute12 := p_attribute12;
342 l_rec.attribute13 := p_attribute13;
343 l_rec.attribute14 := p_attribute14;
344 l_rec.attribute15 := p_attribute15;
345 l_rec.attribute16 := p_attribute16;
346 l_rec.attribute17 := p_attribute17;
347 l_rec.attribute18 := p_attribute18;
348 l_rec.attribute19 := p_attribute19;
349 l_rec.attribute20 := p_attribute20;
350 l_rec.attribute21 := p_attribute21;
351 l_rec.attribute22 := p_attribute22;
352 l_rec.attribute23 := p_attribute23;
353 l_rec.attribute24 := p_attribute24;
354 l_rec.attribute25 := p_attribute25;
355 l_rec.attribute26 := p_attribute26;
356 l_rec.attribute27 := p_attribute27;
357 l_rec.attribute28 := p_attribute28;
358 l_rec.attribute29 := p_attribute29;
359 l_rec.attribute30 := p_attribute30;
360 l_rec.object_version_number := p_object_version_number;
361 l_rec.agency_id := p_agency_id;
362 l_rec.attempt_id := p_attempt_id;
363 --
364 -- Return the plsql record structure.
365 --
366 Return(l_rec);
367 --
368 End convert_args;
369 --
370 end irc_inp_shd;