DBA Data[Home] [Help]

PACKAGE BODY: APPS.IRC_IPC_BUS

Source


1 Package Body irc_ipc_bus as
2 /* $Header: iripcrhi.pkb 120.0 2005/07/26 15:08:54 mbocutt noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33) := '  irc_ipc_bus.';  -- Global package name
9 --
10 -- The following two global variables are only to be
11 -- used by the return_legislation_code function.
12 --
13 g_legislation_code            varchar2(150)  default null;
14 g_posting_content_id          number         default null;
15 --
16 --
17 -- ----------------------------------------------------------------------------
18 -- |-----------------------------< chk_ddf >----------------------------------|
19 -- ----------------------------------------------------------------------------
20 --
21 -- Description:
22 --   Validates all the Developer Descriptive Flexfield values.
23 --
24 -- Prerequisites:
25 --   All other columns have been validated.  Must be called as the
26 --   last step from insert_validate and update_validate.
27 --
28 -- In Arguments:
29 --   p_rec
30 --
31 -- Post Success:
32 --   If the Developer Descriptive Flexfield structure column and data values
33 --   are all valid this procedure will end normally and processing will
34 --   continue.
35 --
36 -- Post Failure:
37 --   If the Developer Descriptive Flexfield structure column value or any of
38 --   the data values are invalid then an application error is raised as
39 --   a PL/SQL exception.
40 --
41 -- Access Status:
42 --   Internal Row Handler Use Only.
43 --
44 -- ----------------------------------------------------------------------------
45 procedure chk_ddf
46   (p_rec in irc_ipc_shd.g_rec_type
47   ) is
48 --
49   l_proc   varchar2(72) := g_package || 'chk_ddf';
50 --
51 begin
52   hr_utility.set_location('Entering:'||l_proc,10);
53   --
54   if ((p_rec.posting_content_id is not null)  and (
55     nvl(irc_ipc_shd.g_old_rec.ipc_information_category, hr_api.g_varchar2) <>
56     nvl(p_rec.ipc_information_category, hr_api.g_varchar2)  or
57     nvl(irc_ipc_shd.g_old_rec.ipc_information1, hr_api.g_varchar2) <>
58     nvl(p_rec.ipc_information1, hr_api.g_varchar2)  or
59     nvl(irc_ipc_shd.g_old_rec.ipc_information2, hr_api.g_varchar2) <>
60     nvl(p_rec.ipc_information2, hr_api.g_varchar2)  or
61     nvl(irc_ipc_shd.g_old_rec.ipc_information3, hr_api.g_varchar2) <>
62     nvl(p_rec.ipc_information3, hr_api.g_varchar2)  or
63     nvl(irc_ipc_shd.g_old_rec.ipc_information4, hr_api.g_varchar2) <>
64     nvl(p_rec.ipc_information4, hr_api.g_varchar2)  or
65     nvl(irc_ipc_shd.g_old_rec.ipc_information5, hr_api.g_varchar2) <>
66     nvl(p_rec.ipc_information5, hr_api.g_varchar2)  or
67     nvl(irc_ipc_shd.g_old_rec.ipc_information6, hr_api.g_varchar2) <>
68     nvl(p_rec.ipc_information6, hr_api.g_varchar2)  or
69     nvl(irc_ipc_shd.g_old_rec.ipc_information7, hr_api.g_varchar2) <>
70     nvl(p_rec.ipc_information7, hr_api.g_varchar2)  or
71     nvl(irc_ipc_shd.g_old_rec.ipc_information8, hr_api.g_varchar2) <>
72     nvl(p_rec.ipc_information8, hr_api.g_varchar2)  or
73     nvl(irc_ipc_shd.g_old_rec.ipc_information9, hr_api.g_varchar2) <>
74     nvl(p_rec.ipc_information9, hr_api.g_varchar2)  or
75     nvl(irc_ipc_shd.g_old_rec.ipc_information10, hr_api.g_varchar2) <>
76     nvl(p_rec.ipc_information10, hr_api.g_varchar2)  or
77     nvl(irc_ipc_shd.g_old_rec.ipc_information11, hr_api.g_varchar2) <>
78     nvl(p_rec.ipc_information11, hr_api.g_varchar2)  or
79     nvl(irc_ipc_shd.g_old_rec.ipc_information12, hr_api.g_varchar2) <>
80     nvl(p_rec.ipc_information12, hr_api.g_varchar2)  or
81     nvl(irc_ipc_shd.g_old_rec.ipc_information13, hr_api.g_varchar2) <>
82     nvl(p_rec.ipc_information13, hr_api.g_varchar2)  or
83     nvl(irc_ipc_shd.g_old_rec.ipc_information14, hr_api.g_varchar2) <>
84     nvl(p_rec.ipc_information14, hr_api.g_varchar2)  or
85     nvl(irc_ipc_shd.g_old_rec.ipc_information15, hr_api.g_varchar2) <>
86     nvl(p_rec.ipc_information15, hr_api.g_varchar2)  or
87     nvl(irc_ipc_shd.g_old_rec.ipc_information16, hr_api.g_varchar2) <>
88     nvl(p_rec.ipc_information16, hr_api.g_varchar2)  or
89     nvl(irc_ipc_shd.g_old_rec.ipc_information17, hr_api.g_varchar2) <>
90     nvl(p_rec.ipc_information17, hr_api.g_varchar2)  or
91     nvl(irc_ipc_shd.g_old_rec.ipc_information18, hr_api.g_varchar2) <>
92     nvl(p_rec.ipc_information18, hr_api.g_varchar2)  or
93     nvl(irc_ipc_shd.g_old_rec.ipc_information19, hr_api.g_varchar2) <>
94     nvl(p_rec.ipc_information19, hr_api.g_varchar2)  or
95     nvl(irc_ipc_shd.g_old_rec.ipc_information20, hr_api.g_varchar2) <>
96     nvl(p_rec.ipc_information20, hr_api.g_varchar2)  or
97     nvl(irc_ipc_shd.g_old_rec.ipc_information21, hr_api.g_varchar2) <>
98     nvl(p_rec.ipc_information21, hr_api.g_varchar2)  or
99     nvl(irc_ipc_shd.g_old_rec.ipc_information22, hr_api.g_varchar2) <>
100     nvl(p_rec.ipc_information22, hr_api.g_varchar2)  or
101     nvl(irc_ipc_shd.g_old_rec.ipc_information23, hr_api.g_varchar2) <>
102     nvl(p_rec.ipc_information23, hr_api.g_varchar2)  or
103     nvl(irc_ipc_shd.g_old_rec.ipc_information24, hr_api.g_varchar2) <>
104     nvl(p_rec.ipc_information24, hr_api.g_varchar2)  or
105     nvl(irc_ipc_shd.g_old_rec.ipc_information25, hr_api.g_varchar2) <>
106     nvl(p_rec.ipc_information25, hr_api.g_varchar2)  or
107     nvl(irc_ipc_shd.g_old_rec.ipc_information26, hr_api.g_varchar2) <>
108     nvl(p_rec.ipc_information26, hr_api.g_varchar2)  or
109     nvl(irc_ipc_shd.g_old_rec.ipc_information27, hr_api.g_varchar2) <>
110     nvl(p_rec.ipc_information27, hr_api.g_varchar2)  or
111     nvl(irc_ipc_shd.g_old_rec.ipc_information28, hr_api.g_varchar2) <>
112     nvl(p_rec.ipc_information28, hr_api.g_varchar2)  or
113     nvl(irc_ipc_shd.g_old_rec.ipc_information29, hr_api.g_varchar2) <>
114     nvl(p_rec.ipc_information29, hr_api.g_varchar2)  or
115     nvl(irc_ipc_shd.g_old_rec.ipc_information30, hr_api.g_varchar2) <>
116     nvl(p_rec.ipc_information30, hr_api.g_varchar2) ))
117     or (p_rec.posting_content_id is null)  then
118     --
119     -- Only execute the validation if absolutely necessary:
120     -- a) During update, the structure column value or any
121     --    of the attribute values have actually changed.
122     -- b) During insert.
123     --
124     hr_dflex_utility.ins_or_upd_descflex_attribs
125       (p_appl_short_name                 => 'PER'
126       ,p_descflex_name                   => 'IRC_POSTING_CONTENT_DDF'
127       ,p_attribute_category              => p_rec.ipc_information_category
128       ,p_attribute1_name                 => 'IPC_INFORMATION1'
129       ,p_attribute1_value                => p_rec.ipc_information1
130       ,p_attribute2_name                 => 'IPC_INFORMATION2'
131       ,p_attribute2_value                => p_rec.ipc_information2
132       ,p_attribute3_name                 => 'IPC_INFORMATION3'
133       ,p_attribute3_value                => p_rec.ipc_information3
134       ,p_attribute4_name                 => 'IPC_INFORMATION4'
135       ,p_attribute4_value                => p_rec.ipc_information4
136       ,p_attribute5_name                 => 'IPC_INFORMATION5'
137       ,p_attribute5_value                => p_rec.ipc_information5
138       ,p_attribute6_name                 => 'IPC_INFORMATION6'
139       ,p_attribute6_value                => p_rec.ipc_information6
140       ,p_attribute7_name                 => 'IPC_INFORMATION7'
141       ,p_attribute7_value                => p_rec.ipc_information7
142       ,p_attribute8_name                 => 'IPC_INFORMATION8'
143       ,p_attribute8_value                => p_rec.ipc_information8
144       ,p_attribute9_name                 => 'IPC_INFORMATION9'
145       ,p_attribute9_value                => p_rec.ipc_information9
146       ,p_attribute10_name                => 'IPC_INFORMATION10'
147       ,p_attribute10_value               => p_rec.ipc_information10
148       ,p_attribute11_name                => 'IPC_INFORMATION11'
149       ,p_attribute11_value               => p_rec.ipc_information11
150       ,p_attribute12_name                => 'IPC_INFORMATION12'
151       ,p_attribute12_value               => p_rec.ipc_information12
152       ,p_attribute13_name                => 'IPC_INFORMATION13'
153       ,p_attribute13_value               => p_rec.ipc_information13
154       ,p_attribute14_name                => 'IPC_INFORMATION14'
155       ,p_attribute14_value               => p_rec.ipc_information14
156       ,p_attribute15_name                => 'IPC_INFORMATION15'
157       ,p_attribute15_value               => p_rec.ipc_information15
158       ,p_attribute16_name                => 'IPC_INFORMATION16'
159       ,p_attribute16_value               => p_rec.ipc_information16
160       ,p_attribute17_name                => 'IPC_INFORMATION17'
161       ,p_attribute17_value               => p_rec.ipc_information17
162       ,p_attribute18_name                => 'IPC_INFORMATION18'
163       ,p_attribute18_value               => p_rec.ipc_information18
164       ,p_attribute19_name                => 'IPC_INFORMATION19'
165       ,p_attribute19_value               => p_rec.ipc_information19
166       ,p_attribute20_name                => 'IPC_INFORMATION20'
167       ,p_attribute20_value               => p_rec.ipc_information20
168       ,p_attribute21_name                => 'IPC_INFORMATION21'
169       ,p_attribute21_value               => p_rec.ipc_information21
170       ,p_attribute22_name                => 'IPC_INFORMATION22'
171       ,p_attribute22_value               => p_rec.ipc_information22
172       ,p_attribute23_name                => 'IPC_INFORMATION23'
173       ,p_attribute23_value               => p_rec.ipc_information23
174       ,p_attribute24_name                => 'IPC_INFORMATION24'
175       ,p_attribute24_value               => p_rec.ipc_information24
176       ,p_attribute25_name                => 'IPC_INFORMATION25'
177       ,p_attribute25_value               => p_rec.ipc_information25
178       ,p_attribute26_name                => 'IPC_INFORMATION26'
179       ,p_attribute26_value               => p_rec.ipc_information26
180       ,p_attribute27_name                => 'IPC_INFORMATION27'
181       ,p_attribute27_value               => p_rec.ipc_information27
182       ,p_attribute28_name                => 'IPC_INFORMATION28'
183       ,p_attribute28_value               => p_rec.ipc_information28
184       ,p_attribute29_name                => 'IPC_INFORMATION29'
185       ,p_attribute29_value               => p_rec.ipc_information29
186       ,p_attribute30_name                => 'IPC_INFORMATION30'
187       ,p_attribute30_value               => p_rec.ipc_information30
188       );
189   end if;
190   --
191   hr_utility.set_location(' Leaving:'||l_proc,20);
192 end chk_ddf;
193 --
194 -- ----------------------------------------------------------------------------
195 -- |------------------------------< chk_df >----------------------------------|
196 -- ----------------------------------------------------------------------------
197 --
198 -- Description:
199 --   Validates all the Descriptive Flexfield values.
200 --
201 -- Prerequisites:
202 --   All other columns have been validated.  Must be called as the
203 --   last step from insert_validate and update_validate.
204 --
205 -- In Arguments:
206 --   p_rec
207 --
208 -- Post Success:
209 --   If the Descriptive Flexfield structure column and data values are
210 --   all valid this procedure will end normally and processing will
211 --   continue.
212 --
213 -- Post Failure:
214 --   If the Descriptive Flexfield structure column value or any of
215 --   the data values are invalid then an application error is raised as
216 --   a PL/SQL exception.
217 --
218 -- Access Status:
219 --   Internal Row Handler Use Only.
220 --
221 -- ----------------------------------------------------------------------------
222 procedure chk_df
223   (p_rec in irc_ipc_shd.g_rec_type
224   ) is
225 --
226   l_proc   varchar2(72) := g_package || 'chk_df';
227 --
228 begin
229   hr_utility.set_location('Entering:'||l_proc,10);
230   --
231   if ((p_rec.posting_content_id is not null)  and (
232     nvl(irc_ipc_shd.g_old_rec.attribute_category, hr_api.g_varchar2) <>
233     nvl(p_rec.attribute_category, hr_api.g_varchar2)  or
234     nvl(irc_ipc_shd.g_old_rec.attribute1, hr_api.g_varchar2) <>
235     nvl(p_rec.attribute1, hr_api.g_varchar2)  or
236     nvl(irc_ipc_shd.g_old_rec.attribute2, hr_api.g_varchar2) <>
237     nvl(p_rec.attribute2, hr_api.g_varchar2)  or
238     nvl(irc_ipc_shd.g_old_rec.attribute3, hr_api.g_varchar2) <>
239     nvl(p_rec.attribute3, hr_api.g_varchar2)  or
240     nvl(irc_ipc_shd.g_old_rec.attribute4, hr_api.g_varchar2) <>
241     nvl(p_rec.attribute4, hr_api.g_varchar2)  or
242     nvl(irc_ipc_shd.g_old_rec.attribute5, hr_api.g_varchar2) <>
243     nvl(p_rec.attribute5, hr_api.g_varchar2)  or
244     nvl(irc_ipc_shd.g_old_rec.attribute6, hr_api.g_varchar2) <>
245     nvl(p_rec.attribute6, hr_api.g_varchar2)  or
246     nvl(irc_ipc_shd.g_old_rec.attribute7, hr_api.g_varchar2) <>
247     nvl(p_rec.attribute7, hr_api.g_varchar2)  or
248     nvl(irc_ipc_shd.g_old_rec.attribute8, hr_api.g_varchar2) <>
249     nvl(p_rec.attribute8, hr_api.g_varchar2)  or
250     nvl(irc_ipc_shd.g_old_rec.attribute9, hr_api.g_varchar2) <>
251     nvl(p_rec.attribute9, hr_api.g_varchar2)  or
252     nvl(irc_ipc_shd.g_old_rec.attribute10, hr_api.g_varchar2) <>
253     nvl(p_rec.attribute10, hr_api.g_varchar2)  or
254     nvl(irc_ipc_shd.g_old_rec.attribute11, hr_api.g_varchar2) <>
255     nvl(p_rec.attribute11, hr_api.g_varchar2)  or
256     nvl(irc_ipc_shd.g_old_rec.attribute12, hr_api.g_varchar2) <>
257     nvl(p_rec.attribute12, hr_api.g_varchar2)  or
258     nvl(irc_ipc_shd.g_old_rec.attribute13, hr_api.g_varchar2) <>
259     nvl(p_rec.attribute13, hr_api.g_varchar2)  or
260     nvl(irc_ipc_shd.g_old_rec.attribute14, hr_api.g_varchar2) <>
261     nvl(p_rec.attribute14, hr_api.g_varchar2)  or
262     nvl(irc_ipc_shd.g_old_rec.attribute15, hr_api.g_varchar2) <>
263     nvl(p_rec.attribute15, hr_api.g_varchar2)  or
264     nvl(irc_ipc_shd.g_old_rec.attribute16, hr_api.g_varchar2) <>
265     nvl(p_rec.attribute16, hr_api.g_varchar2)  or
266     nvl(irc_ipc_shd.g_old_rec.attribute17, hr_api.g_varchar2) <>
267     nvl(p_rec.attribute17, hr_api.g_varchar2)  or
268     nvl(irc_ipc_shd.g_old_rec.attribute18, hr_api.g_varchar2) <>
269     nvl(p_rec.attribute18, hr_api.g_varchar2)  or
270     nvl(irc_ipc_shd.g_old_rec.attribute19, hr_api.g_varchar2) <>
271     nvl(p_rec.attribute19, hr_api.g_varchar2)  or
272     nvl(irc_ipc_shd.g_old_rec.attribute20, hr_api.g_varchar2) <>
273     nvl(p_rec.attribute20, hr_api.g_varchar2)  or
274     nvl(irc_ipc_shd.g_old_rec.attribute21, hr_api.g_varchar2) <>
275     nvl(p_rec.attribute21, hr_api.g_varchar2)  or
276     nvl(irc_ipc_shd.g_old_rec.attribute22, hr_api.g_varchar2) <>
277     nvl(p_rec.attribute22, hr_api.g_varchar2)  or
278     nvl(irc_ipc_shd.g_old_rec.attribute23, hr_api.g_varchar2) <>
279     nvl(p_rec.attribute23, hr_api.g_varchar2)  or
280     nvl(irc_ipc_shd.g_old_rec.attribute24, hr_api.g_varchar2) <>
281     nvl(p_rec.attribute24, hr_api.g_varchar2)  or
282     nvl(irc_ipc_shd.g_old_rec.attribute25, hr_api.g_varchar2) <>
283     nvl(p_rec.attribute25, hr_api.g_varchar2)  or
284     nvl(irc_ipc_shd.g_old_rec.attribute26, hr_api.g_varchar2) <>
285     nvl(p_rec.attribute26, hr_api.g_varchar2)  or
286     nvl(irc_ipc_shd.g_old_rec.attribute27, hr_api.g_varchar2) <>
287     nvl(p_rec.attribute27, hr_api.g_varchar2)  or
288     nvl(irc_ipc_shd.g_old_rec.attribute28, hr_api.g_varchar2) <>
289     nvl(p_rec.attribute28, hr_api.g_varchar2)  or
290     nvl(irc_ipc_shd.g_old_rec.attribute29, hr_api.g_varchar2) <>
291     nvl(p_rec.attribute29, hr_api.g_varchar2)  or
292     nvl(irc_ipc_shd.g_old_rec.attribute30, hr_api.g_varchar2) <>
293     nvl(p_rec.attribute30, hr_api.g_varchar2) ))
294     or (p_rec.posting_content_id is null)  then
295     --
296     -- Only execute the validation if absolutely necessary:
297     -- a) During update, the structure column value or any
298     --    of the attribute values have actually changed.
299     -- b) During insert.
300     --
301     hr_dflex_utility.ins_or_upd_descflex_attribs
302       (p_appl_short_name                 => 'PER'
303       ,p_descflex_name                   => 'IRC_POSTING_CONTENTS'
304       ,p_attribute_category              => p_rec.attribute_category
305       ,p_attribute1_name                 => 'ATTRIBUTE1'
306       ,p_attribute1_value                => p_rec.attribute1
310       ,p_attribute3_value                => p_rec.attribute3
307       ,p_attribute2_name                 => 'ATTRIBUTE2'
308       ,p_attribute2_value                => p_rec.attribute2
309       ,p_attribute3_name                 => 'ATTRIBUTE3'
311       ,p_attribute4_name                 => 'ATTRIBUTE4'
312       ,p_attribute4_value                => p_rec.attribute4
313       ,p_attribute5_name                 => 'ATTRIBUTE5'
314       ,p_attribute5_value                => p_rec.attribute5
315       ,p_attribute6_name                 => 'ATTRIBUTE6'
316       ,p_attribute6_value                => p_rec.attribute6
317       ,p_attribute7_name                 => 'ATTRIBUTE7'
318       ,p_attribute7_value                => p_rec.attribute7
319       ,p_attribute8_name                 => 'ATTRIBUTE8'
320       ,p_attribute8_value                => p_rec.attribute8
321       ,p_attribute9_name                 => 'ATTRIBUTE9'
322       ,p_attribute9_value                => p_rec.attribute9
323       ,p_attribute10_name                => 'ATTRIBUTE10'
324       ,p_attribute10_value               => p_rec.attribute10
325       ,p_attribute11_name                => 'ATTRIBUTE11'
326       ,p_attribute11_value               => p_rec.attribute11
327       ,p_attribute12_name                => 'ATTRIBUTE12'
328       ,p_attribute12_value               => p_rec.attribute12
329       ,p_attribute13_name                => 'ATTRIBUTE13'
330       ,p_attribute13_value               => p_rec.attribute13
331       ,p_attribute14_name                => 'ATTRIBUTE14'
332       ,p_attribute14_value               => p_rec.attribute14
333       ,p_attribute15_name                => 'ATTRIBUTE15'
334       ,p_attribute15_value               => p_rec.attribute15
335       ,p_attribute16_name                => 'ATTRIBUTE16'
336       ,p_attribute16_value               => p_rec.attribute16
337       ,p_attribute17_name                => 'ATTRIBUTE17'
338       ,p_attribute17_value               => p_rec.attribute17
339       ,p_attribute18_name                => 'ATTRIBUTE18'
340       ,p_attribute18_value               => p_rec.attribute18
341       ,p_attribute19_name                => 'ATTRIBUTE19'
342       ,p_attribute19_value               => p_rec.attribute19
343       ,p_attribute20_name                => 'ATTRIBUTE20'
344       ,p_attribute20_value               => p_rec.attribute20
345       ,p_attribute21_name                => 'ATTRIBUTE21'
346       ,p_attribute21_value               => p_rec.attribute21
347       ,p_attribute22_name                => 'ATTRIBUTE22'
348       ,p_attribute22_value               => p_rec.attribute22
349       ,p_attribute23_name                => 'ATTRIBUTE23'
350       ,p_attribute23_value               => p_rec.attribute23
351       ,p_attribute24_name                => 'ATTRIBUTE24'
352       ,p_attribute24_value               => p_rec.attribute24
353       ,p_attribute25_name                => 'ATTRIBUTE25'
354       ,p_attribute25_value               => p_rec.attribute25
355       ,p_attribute26_name                => 'ATTRIBUTE26'
356       ,p_attribute26_value               => p_rec.attribute26
357       ,p_attribute27_name                => 'ATTRIBUTE27'
358       ,p_attribute27_value               => p_rec.attribute27
359       ,p_attribute28_name                => 'ATTRIBUTE28'
360       ,p_attribute28_value               => p_rec.attribute28
361       ,p_attribute29_name                => 'ATTRIBUTE29'
362       ,p_attribute29_value               => p_rec.attribute29
363       ,p_attribute30_name                => 'ATTRIBUTE30'
364       ,p_attribute30_value               => p_rec.attribute30
365       );
366   end if;
367   --
368   hr_utility.set_location(' Leaving:'||l_proc,20);
369 end chk_df;
370 --
371 -- ----------------------------------------------------------------------------
372 -- |-----------------------< chk_non_updateable_args >------------------------|
373 -- ----------------------------------------------------------------------------
374 -- {Start Of Comments}
375 --
376 -- Description:
377 --   This procedure is used to ensure that non updateable attributes have
378 --   not been updated. If an attribute has been updated an error is generated.
379 --
380 -- Pre Conditions:
381 --   g_old_rec has been populated with details of the values currently in
382 --   the database.
383 --
384 -- In Arguments:
385 --   p_rec has been populated with the updated values the user would like the
386 --   record set to.
387 --
388 -- Post Success:
389 --   Processing continues if all the non updateable attributes have not
390 --   changed.
391 --
392 -- Post Failure:
393 --   An application error is raised if any of the non updatable attributes
394 --   have been altered.
395 --
396 -- {End Of Comments}
397 -- ----------------------------------------------------------------------------
398 Procedure chk_non_updateable_args
399   (p_rec in irc_ipc_shd.g_rec_type
400   ) IS
401 --
402   l_proc     varchar2(72) := g_package || 'chk_non_updateable_args';
403 --
404 Begin
405   --
406   -- Only proceed with the validation if a row exists for the current
407   -- record in the HR Schema.
408   --
409   IF NOT irc_ipc_shd.api_updating
410       (p_posting_content_id                   => p_rec.posting_content_id
411       ,p_object_version_number                => p_rec.object_version_number
412       ) THEN
413      fnd_message.set_name('PER', 'HR_6153_ALL_PROCEDURE_FAIL');
414      fnd_message.set_token('PROCEDURE ', l_proc);
415      fnd_message.set_token('STEP ', '5');
416      fnd_message.raise_error;
420 --
417   END IF;
418 --
419 End chk_non_updateable_args;
421 -- ----------------------------------------------------------------------------
422 -- |-----------------------< chk_display_manager_info >-----------------------|
423 -- ----------------------------------------------------------------------------
424 -- {Start Of Comments}
425 --
426 -- Description:
427 --   This procedure is used to ensure that valid values for
428 --   display_manager_info column is entered
429 --
430 -- Pre Conditions:
431 --   g_old_rec has been populated with details of the values currently in
432 --   the database.
433 --
434 -- In Arguments:
435 --   p_display_manager_info
436 --   p_posting_content_id
437 --   p_object_version_number
438 --
439 -- Post Success:
440 --   Processing continues if valid values are entered for
441 --   display_manager_info column.
442 --
443 -- Post Failure:
444 --   An application error is raised if invalid values are entered
445 --
446 -- {End Of Comments}
447 -- ----------------------------------------------------------------------------
448 --
449 Procedure chk_display_manager_info
450 (
451  p_display_manager_info in irc_posting_contents.display_manager_info%TYPE
452 ,p_posting_content_id in irc_posting_contents.posting_content_id%TYPE
453 ,p_object_version_number in irc_posting_contents.object_version_number%TYPE
454 )
455 is
456   l_proc     varchar2(72) := g_package || 'chk_display_manager_info';
457   l_api_updating boolean;
458 begin
459   hr_utility.set_location('Entering:'||l_proc, 10);
460   l_api_updating := irc_ipc_shd.api_updating
461   (p_posting_content_id    => p_posting_content_id
462   ,p_object_version_number => p_object_version_number);
463       --
464   hr_utility.set_location(l_proc,20);
465   if ((l_api_updating
466     and
467     irc_ipc_shd.g_old_rec.display_manager_info <>
468     nvl(p_display_manager_info, hr_api.g_varchar2))
469     or
470     (NOT l_api_updating)) then
471     hr_utility.set_location(l_proc,30);
472     hr_api.mandatory_arg_error
473       (p_api_name           => l_proc
474       ,p_argument           => 'display_manager_info'
475       ,p_argument_value     => p_display_manager_info
476     );
477     hr_utility.set_location(l_proc,40);
478     if (p_display_manager_info not in ('Y','N'))
479     then
480       fnd_message.set_name('PER','IRC_412027_IPC_MAN_INFO_INV');
481       fnd_message.raise_error;
482     end if;
483   end if;
484   hr_utility.set_location(' Leaving:'||l_proc,45);
485   exception
486     when app_exception.application_exception then
487       if hr_multi_message.exception_add
488       (p_associated_column1 => 'IRC_POSTING_CONTENTS.DISPLAY_MANAGER_INFO'
489       )then
490         hr_utility.set_location(' Leaving:'||l_proc, 50);
491         raise;
492       end if;
493   hr_utility.set_location(' Leaving:'||l_proc,60);
494 end chk_display_manager_info;
495 --
496 -- ----------------------------------------------------------------------------
497 -- |-----------------------< chk_display_recruiter_info >----------------------|
498 -- ----------------------------------------------------------------------------
499 -- {Start Of Comments}
500 --
501 -- Description:
502 --   This procedure is used to ensure that valid values for
503 --   display_recruiter_info column is entered
504 --
505 -- Pre Conditions:
506 --   g_old_rec has been populated with details of the values currently in
507 --   the database.
508 --
509 -- In Arguments:
510 --   p_display_recruiter_info
511 --   p_posting_content_id
512 --   p_object_version_number
513 --
514 -- Post Success:
515 --   Processing continues if valid values are entered for
516 --   display_recruiter_info column.
517 --
518 -- Post Failure:
519 --   An application error is raised if invalid values are entered
520 --
521 -- {End Of Comments}
522 -- ----------------------------------------------------------------------------
523 --
524 Procedure chk_display_recruiter_info
525 (
526  p_display_recruiter_info in irc_posting_contents.display_recruiter_info%TYPE
527 ,p_posting_content_id in irc_posting_contents.posting_content_id%TYPE
528 ,p_object_version_number in irc_posting_contents.object_version_number%TYPE
529 )
530 is
531   l_proc     varchar2(72) := g_package || 'chk_display_recruiter_info';
532   l_api_updating boolean;
533 begin
534   hr_utility.set_location('Entering:'||l_proc, 5);
535   l_api_updating := irc_ipc_shd.api_updating
536   (p_posting_content_id    => p_posting_content_id
537   ,p_object_version_number => p_object_version_number);
538       --
539   hr_utility.set_location(l_proc,20);
540   if ((l_api_updating
541     and
542     irc_ipc_shd.g_old_rec.display_recruiter_info <>
543     nvl(p_display_recruiter_info, hr_api.g_varchar2))
544     or
545     (NOT l_api_updating)) then
546     hr_utility.set_location(l_proc,30);
547     hr_api.mandatory_arg_error
548       (p_api_name           => l_proc
549       ,p_argument           => 'display_recruiter_info'
550       ,p_argument_value     => p_display_recruiter_info
551       );
552     hr_utility.set_location(l_proc,40);
553     if (p_display_recruiter_info not in ('Y','N'))
554     then
555       fnd_message.set_name('PER','IRC_412028_IPC_REC_INFO_INV');
556       fnd_message.raise_error;
557     end if;
558   end if;
562         if hr_multi_message.exception_add
559   hr_utility.set_location(' Leaving:'||l_proc,45);
560   exception
561       when app_exception.application_exception then
563         (p_associated_column1 => 'IRC_POSTING_CONTENTS.DISPLAY_RECRUITER_INFO'
564         )then
565           hr_utility.set_location(' Leaving:'||l_proc, 50);
566           raise;
567         end if;
568   hr_utility.set_location(' Leaving:'||l_proc,60);
569 end chk_display_recruiter_info;
570 --
571 -- ----------------------------------------------------------------------------
572 -- |--------------------------< chk_posting_content_delete >------------------|
573 -- ----------------------------------------------------------------------------
574 --
575 -- Description
576 --   This procedure checks whether a posting content record can be deleted. If
577 --   a Vacancies record is referencing this record then it can not be
578 --   deleted.
579 --
580 -- Pre-Conditions
581 --   None.
582 --
583 -- In Parameters
584 --   p_posting_content_id   PK
585 --
586 -- Post Success
587 --   Processing continues
588 --
589 -- Post Failure
590 --   Error raised.
591 --
592 -- Access Status
593 --   Internal table handler use only.
594 --
595 Procedure chk_posting_content_delete
596   (p_posting_content_id in irc_posting_contents.posting_content_id%TYPE
597   )
598    is
599   --
600   l_proc       varchar2(72) := g_package||'chk_posting_content_delete';
601   l_api_updating    boolean;
602   l_posting_content varchar2(1);
603   --
604   cursor csr_posting_content is
605     select null
606       from per_all_vacancies vac
607      where vac.primary_posting_id = p_posting_content_id;
608   --
609 begin
610   --
611   hr_utility.set_location('Entering:'||l_proc,10);
612   --
613   -- check if referenced records exist in the PER_ALL_VACANCIES table.
614   --
615   open csr_posting_content;
616   fetch csr_posting_content into l_posting_content;
617   hr_utility.set_location(l_proc,20);
618   if csr_posting_content%found then
619     --
620     -- raise error as child records exist.
621     --
622     close csr_posting_content;
623     fnd_message.set_name('PER','IRC_412209_VAC_POSTING_EXISTS');
624     fnd_message.raise_error;
625   end if;
626   close csr_posting_content;
627   hr_utility.set_location(l_proc,30);
628   exception
629     when app_exception.application_exception then
630       if hr_multi_message.exception_add
631         (p_associated_column1 => 'IRC_POSTING_CONTENTS.POSTING_CONTENT_ID'
632         )then
633         hr_utility.set_location(l_proc,40);
634         raise;
635       end if;
636     hr_utility.set_location(' Leaving:'||l_proc,50);
637     --
638 end chk_posting_content_delete;
639 --
640 -- ----------------------------------------------------------------------------
641 -- |---------------------------< insert_validate >----------------------------|
642 -- ----------------------------------------------------------------------------
643 Procedure insert_validate
647   l_proc  varchar2(72) := g_package||'insert_validate';
644   (p_rec                          in irc_ipc_shd.g_rec_type
645   ) is
646 --
648 --
649 Begin
650   hr_utility.set_location('Entering:'||l_proc, 5);
651   irc_ipc_bus.chk_display_manager_info
652   (
653    p_display_manager_info  => p_rec.display_manager_info
654   ,p_posting_content_id    => p_rec.posting_content_id
655   ,p_object_version_number => p_rec.object_version_number
656   );
657   hr_utility.set_location(l_proc, 10);
658   irc_ipc_bus.chk_display_recruiter_info
659   (
660    p_display_recruiter_info => p_rec.display_recruiter_info
661   ,p_posting_content_id     => p_rec.posting_content_id
662   ,p_object_version_number  => p_rec.object_version_number
663   );
664   hr_utility.set_location(l_proc, 20);
665   irc_ipc_bus.chk_df(p_rec);
666   hr_utility.set_location(l_proc, 30);
667   irc_ipc_bus.chk_ddf(p_rec);
668   --
669   hr_utility.set_location(' Leaving:'||l_proc, 40);
670 End insert_validate;
671 --
672 -- ----------------------------------------------------------------------------
673 -- |---------------------------< update_validate >----------------------------|
674 -- ----------------------------------------------------------------------------
675 Procedure update_validate
676   (p_rec                          in irc_ipc_shd.g_rec_type
677   ) is
678 --
679   l_proc  varchar2(72) := g_package||'update_validate';
680 --
681 Begin
682   hr_utility.set_location('Entering:'||l_proc, 5);
683 --
684   chk_non_updateable_args
685   (p_rec              => p_rec
686   );
687   hr_utility.set_location('Entering:'||l_proc, 10);
688   irc_ipc_bus.chk_display_manager_info
689   (
690    p_display_manager_info  => p_rec.display_manager_info
691   ,p_posting_content_id    => p_rec.posting_content_id
692   ,p_object_version_number => p_rec.object_version_number
693   );
694   hr_utility.set_location(l_proc, 20);
695   irc_ipc_bus.chk_display_recruiter_info
696   (
697    p_display_recruiter_info => p_rec.display_recruiter_info
698   ,p_posting_content_id     => p_rec.posting_content_id
699   ,p_object_version_number  => p_rec.object_version_number
700   );
701   hr_utility.set_location(l_proc,30);
702   irc_ipc_bus.chk_df(p_rec);
703   hr_utility.set_location(l_proc,40);
704   irc_ipc_bus.chk_ddf(p_rec);
705  --
706   hr_utility.set_location(' Leaving:'||l_proc, 50);
707 End update_validate;
708 --
709 -- ----------------------------------------------------------------------------
710 -- |---------------------------< delete_validate >----------------------------|
711 -- ----------------------------------------------------------------------------
712 Procedure delete_validate
713   (p_rec                          in irc_ipc_shd.g_rec_type
714   ) is
715 --
716   l_proc  varchar2(72) := g_package||'delete_validate';
717 --
718 Begin
719   hr_utility.set_location('Entering:'||l_proc, 5);
720   --
721   -- Call all supporting business operations
722   --
723   if(p_rec.posting_content_id is not null) then
724     irc_ipc_bus.chk_posting_content_delete
725     (p_posting_content_id   => p_rec.posting_content_id
726     );
727   end if;
728   hr_utility.set_location(' Leaving:'||l_proc, 10);
729 End delete_validate;
730 --
731 end irc_ipc_bus;