DBA Data[Home] [Help]

PACKAGE BODY: APPS.IRC_INP_SHD

Source


1 Package Body irc_inp_shd as
2 /* $Header: irinprhi.pkb 120.2.12020000.3 2013/02/14 06:09:16 nitnaras ship $ */
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;