DBA Data[Home] [Help]

PACKAGE BODY: APPS.PER_POD_UPD

Source


1 Package Body per_pod_upd as
2 /* $Header: pepodrhi.pkb 115.6 2002/12/04 10:56:05 eumenyio ship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33)	:= '  per_pod_upd.';  -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |-----------------------------< convert_defs >-----------------------------|
12 -- ----------------------------------------------------------------------------
13 --
14 Procedure convert_defs(p_rec in out nocopy per_pod_shd.g_rec_type) is
15 --
16   l_proc  varchar2(72) := g_package||'convert_defs';
17 --
18 Begin
19   --
20   hr_utility.set_location('Entering:'||l_proc, 5);
21   --
22   -- We must now examine each argument value in the
23   -- p_rec plsql record structure
24   -- to see if a system default is being used. If a system default
25   -- is being used then we must set to the 'current' argument value.
26   --
27   If (p_rec.id_flex_num = hr_api.g_number) then
28     p_rec.id_flex_num :=
29     per_pod_shd.g_old_rec.id_flex_num;
30   End If;
31   If (p_rec.summary_flag = hr_api.g_varchar2) then
32     p_rec.summary_flag :=
33     per_pod_shd.g_old_rec.summary_flag;
34   End If;
35   If (p_rec.enabled_flag = hr_api.g_varchar2) then
36     p_rec.enabled_flag :=
37     per_pod_shd.g_old_rec.enabled_flag;
38   End If;
39   If (p_rec.start_date_active = hr_api.g_date) then
40     p_rec.start_date_active :=
41     per_pod_shd.g_old_rec.start_date_active;
42   End If;
43   If (p_rec.end_date_active = hr_api.g_date) then
44     p_rec.end_date_active :=
45     per_pod_shd.g_old_rec.end_date_active;
46   End If;
47   If (p_rec.segment1 = hr_api.g_varchar2) then
48     p_rec.segment1 :=
49     per_pod_shd.g_old_rec.segment1;
50   End If;
51   If (p_rec.segment2 = hr_api.g_varchar2) then
52     p_rec.segment2 :=
53     per_pod_shd.g_old_rec.segment2;
54   End If;
55   If (p_rec.segment3 = hr_api.g_varchar2) then
56     p_rec.segment3 :=
57     per_pod_shd.g_old_rec.segment3;
58   End If;
59   If (p_rec.segment4 = hr_api.g_varchar2) then
60     p_rec.segment4 :=
61     per_pod_shd.g_old_rec.segment4;
62   End If;
63   If (p_rec.segment5 = hr_api.g_varchar2) then
64     p_rec.segment5 :=
65     per_pod_shd.g_old_rec.segment5;
66   End If;
67   If (p_rec.segment6 = hr_api.g_varchar2) then
68     p_rec.segment6 :=
69     per_pod_shd.g_old_rec.segment6;
70   End If;
71   If (p_rec.segment7 = hr_api.g_varchar2) then
72     p_rec.segment7 :=
73     per_pod_shd.g_old_rec.segment7;
74   End If;
75   If (p_rec.segment8 = hr_api.g_varchar2) then
76     p_rec.segment8 :=
77     per_pod_shd.g_old_rec.segment8;
78   End If;
79   If (p_rec.segment9 = hr_api.g_varchar2) then
80     p_rec.segment9 :=
81     per_pod_shd.g_old_rec.segment9;
82   End If;
83   If (p_rec.segment10 = hr_api.g_varchar2) then
84     p_rec.segment10 :=
85     per_pod_shd.g_old_rec.segment10;
86   End If;
87   If (p_rec.segment11 = hr_api.g_varchar2) then
88     p_rec.segment11 :=
89     per_pod_shd.g_old_rec.segment11;
90   End If;
91   If (p_rec.segment12 = hr_api.g_varchar2) then
92     p_rec.segment12 :=
93     per_pod_shd.g_old_rec.segment12;
94   End If;
95   If (p_rec.segment13 = hr_api.g_varchar2) then
96     p_rec.segment13 :=
97     per_pod_shd.g_old_rec.segment13;
98   End If;
99   If (p_rec.segment14 = hr_api.g_varchar2) then
100     p_rec.segment14 :=
101     per_pod_shd.g_old_rec.segment14;
102   End If;
103   If (p_rec.segment15 = hr_api.g_varchar2) then
104     p_rec.segment15 :=
105     per_pod_shd.g_old_rec.segment15;
106   End If;
107   If (p_rec.segment16 = hr_api.g_varchar2) then
108     p_rec.segment16 :=
109     per_pod_shd.g_old_rec.segment16;
110   End If;
111   If (p_rec.segment17 = hr_api.g_varchar2) then
112     p_rec.segment17 :=
113     per_pod_shd.g_old_rec.segment17;
114   End If;
115   If (p_rec.segment18 = hr_api.g_varchar2) then
116     p_rec.segment18 :=
117     per_pod_shd.g_old_rec.segment18;
118   End If;
119   If (p_rec.segment19 = hr_api.g_varchar2) then
120     p_rec.segment19 :=
121     per_pod_shd.g_old_rec.segment19;
122   End If;
123   If (p_rec.segment20 = hr_api.g_varchar2) then
124     p_rec.segment20 :=
125     per_pod_shd.g_old_rec.segment20;
126   End If;
127   If (p_rec.segment21 = hr_api.g_varchar2) then
128     p_rec.segment21 :=
129     per_pod_shd.g_old_rec.segment21;
130   End If;
131   If (p_rec.segment22 = hr_api.g_varchar2) then
132     p_rec.segment22 :=
133     per_pod_shd.g_old_rec.segment22;
134   End If;
135   If (p_rec.segment23 = hr_api.g_varchar2) then
136     p_rec.segment23 :=
137     per_pod_shd.g_old_rec.segment23;
138   End If;
139   If (p_rec.segment24 = hr_api.g_varchar2) then
140     p_rec.segment24 :=
141     per_pod_shd.g_old_rec.segment24;
142   End If;
143   If (p_rec.segment25 = hr_api.g_varchar2) then
144     p_rec.segment25 :=
145     per_pod_shd.g_old_rec.segment25;
146   End If;
147   If (p_rec.segment26 = hr_api.g_varchar2) then
148     p_rec.segment26 :=
149     per_pod_shd.g_old_rec.segment26;
150   End If;
151   If (p_rec.segment27 = hr_api.g_varchar2) then
152     p_rec.segment27 :=
153     per_pod_shd.g_old_rec.segment27;
154   End If;
155   If (p_rec.segment28 = hr_api.g_varchar2) then
156     p_rec.segment28 :=
157     per_pod_shd.g_old_rec.segment28;
158   End If;
159   If (p_rec.segment29 = hr_api.g_varchar2) then
160     p_rec.segment29 :=
161     per_pod_shd.g_old_rec.segment29;
162   End If;
163   If (p_rec.segment30 = hr_api.g_varchar2) then
164     p_rec.segment30 :=
165     per_pod_shd.g_old_rec.segment30;
166   End If;
167 
168   --
169   hr_utility.set_location(' Leaving:'||l_proc, 10);
170 --
171 End convert_defs;
172 --
173 -- ----------------------------------------------------------------------------
174 -- |-------------------------------< upd_or_sel >-----------------------------|
175 -- ----------------------------------------------------------------------------
176 --
177 procedure upd_or_sel
178          (p_segment1               in     varchar2 default hr_api.g_varchar2,
179           p_segment2               in     varchar2 default hr_api.g_varchar2,
180           p_segment3               in     varchar2 default hr_api.g_varchar2,
181           p_segment4               in     varchar2 default hr_api.g_varchar2,
182           p_segment5               in     varchar2 default hr_api.g_varchar2,
183           p_segment6               in     varchar2 default hr_api.g_varchar2,
184           p_segment7               in     varchar2 default hr_api.g_varchar2,
185           p_segment8               in     varchar2 default hr_api.g_varchar2,
186           p_segment9               in     varchar2 default hr_api.g_varchar2,
187           p_segment10              in     varchar2 default hr_api.g_varchar2,
188           p_segment11              in     varchar2 default hr_api.g_varchar2,
189           p_segment12              in     varchar2 default hr_api.g_varchar2,
190           p_segment13              in     varchar2 default hr_api.g_varchar2,
191           p_segment14              in     varchar2 default hr_api.g_varchar2,
192           p_segment15              in     varchar2 default hr_api.g_varchar2,
193           p_segment16              in     varchar2 default hr_api.g_varchar2,
194           p_segment17              in     varchar2 default hr_api.g_varchar2,
195           p_segment18              in     varchar2 default hr_api.g_varchar2,
196           p_segment19              in     varchar2 default hr_api.g_varchar2,
197           p_segment20              in     varchar2 default hr_api.g_varchar2,
198           p_segment21              in     varchar2 default hr_api.g_varchar2,
199           p_segment22              in     varchar2 default hr_api.g_varchar2,
200           p_segment23              in     varchar2 default hr_api.g_varchar2,
201           p_segment24              in     varchar2 default hr_api.g_varchar2,
202           p_segment25              in     varchar2 default hr_api.g_varchar2,
203           p_segment26              in     varchar2 default hr_api.g_varchar2,
204           p_segment27              in     varchar2 default hr_api.g_varchar2,
205           p_segment28              in     varchar2 default hr_api.g_varchar2,
206           p_segment29              in     varchar2 default hr_api.g_varchar2,
207           p_segment30              in     varchar2 default hr_api.g_varchar2,
208           p_business_group_id      in     number,
209           p_position_definition_id in out nocopy number,
210           p_name                      out nocopy varchar2,
211           p_validate               in     boolean default false) is
212 --
213   l_proc          varchar2(72) := g_package||'upd_or_sel';
214   l_rec           per_pod_shd.g_rec_type;
215 --
216 begin
217   hr_utility.set_location('Entering:'||l_proc, 5);
218   --
219   -- convert args into record format
220   --
221   l_rec :=
222     per_pod_shd.convert_args
223       (p_position_definition_id,
224        null,
225        null,
226        null,
227        null,
228        null,
229        p_segment1,
230        p_segment2,
231        p_segment3,
232        p_segment4,
233        p_segment5,
234        p_segment6,
235        p_segment7,
236        p_segment8,
237        p_segment9,
238        p_segment10,
239        p_segment11,
240        p_segment12,
241        p_segment13,
242        p_segment14,
243        p_segment15,
244        p_segment16,
245        p_segment17,
246        p_segment18,
247        p_segment19,
248        p_segment20,
249        p_segment21,
250        p_segment22,
251        p_segment23,
252        p_segment24,
253        p_segment25,
254        p_segment26,
255        p_segment27,
256        p_segment28,
257        p_segment29,
258        p_segment30);
259   --
260   -- check to see if we are updating a row
261   --
262   if per_pod_shd.api_updating
263        (p_position_definition_id => l_rec.position_definition_id) then
264     --
265     hr_utility.set_location(l_proc, 10);
266     --
267     -- the current row exists and we have populated the g_old_rec
268     -- we must now build up the new record by converting the
269     -- arguments into a record structure and converting any of the
270     -- system default values
271     --
272     per_pod_upd.convert_defs(p_rec => l_rec);
273   else
274     --
275     -- as we are actually doing an insert we need to reset the
276     -- arguments if they are using a system default value
277     -- to null otherwise the segments will have the system default
278     -- values when being inserted
279     --
280     if (l_rec.segment1 = hr_api.g_varchar2) then
281       l_rec.segment1 := null;
282     end if;
283     if (l_rec.segment2 = hr_api.g_varchar2) then
284       l_rec.segment2 := null;
285     end if;
286     if (l_rec.segment3 = hr_api.g_varchar2) then
287       l_rec.segment3 := null;
288     end if;
289     if (l_rec.segment4 = hr_api.g_varchar2) then
290       l_rec.segment4 := null;
291     end if;
292     if (l_rec.segment5 = hr_api.g_varchar2) then
293       l_rec.segment5 := null;
294     end if;
295     if (l_rec.segment6 = hr_api.g_varchar2) then
296       l_rec.segment6 := null;
297     end if;
298     if (l_rec.segment7 = hr_api.g_varchar2) then
299       l_rec.segment7 := null;
300     end if;
301     if (l_rec.segment8 = hr_api.g_varchar2) then
302       l_rec.segment8 := null;
303     end if;
304     if (l_rec.segment9 = hr_api.g_varchar2) then
305       l_rec.segment9 := null;
306     end if;
307     if (l_rec.segment10 = hr_api.g_varchar2) then
308       l_rec.segment10 := null;
309     end if;
310     if (l_rec.segment11 = hr_api.g_varchar2) then
311       l_rec.segment11 := null;
312     end if;
313     if (l_rec.segment12 = hr_api.g_varchar2) then
314       l_rec.segment12 := null;
315     end if;
316     if (l_rec.segment13 = hr_api.g_varchar2) then
317       l_rec.segment13 := null;
318     end if;
319     if (l_rec.segment14 = hr_api.g_varchar2) then
320       l_rec.segment14 := null;
321     end if;
322     if (l_rec.segment15 = hr_api.g_varchar2) then
323       l_rec.segment15 := null;
324     end if;
325     if (l_rec.segment16 = hr_api.g_varchar2) then
326       l_rec.segment16 := null;
327     end if;
328     if (l_rec.segment17 = hr_api.g_varchar2) then
329       l_rec.segment17 := null;
330     end if;
331     if (l_rec.segment18 = hr_api.g_varchar2) then
332       l_rec.segment18 := null;
333     end if;
334     if (l_rec.segment19 = hr_api.g_varchar2) then
335       l_rec.segment19 := null;
336     end if;
337     if (l_rec.segment20 = hr_api.g_varchar2) then
338       l_rec.segment20 := null;
339     end if;
340     if (l_rec.segment21 = hr_api.g_varchar2) then
341       l_rec.segment21 := null;
342     end if;
343     if (l_rec.segment22 = hr_api.g_varchar2) then
344       l_rec.segment22 := null;
345     end if;
346     if (l_rec.segment23 = hr_api.g_varchar2) then
347       l_rec.segment23 := null;
348     end if;
349     if (l_rec.segment24 = hr_api.g_varchar2) then
350       l_rec.segment24 := null;
351     end if;
352     if (l_rec.segment25 = hr_api.g_varchar2) then
353       l_rec.segment25 := null;
354     end if;
355     if (l_rec.segment26 = hr_api.g_varchar2) then
356       l_rec.segment26 := null;
357     end if;
358     if (l_rec.segment27 = hr_api.g_varchar2) then
359       l_rec.segment27 := null;
360     end if;
361     if (l_rec.segment28 = hr_api.g_varchar2) then
362       l_rec.segment28 := null;
363     end if;
364     if (l_rec.segment29 = hr_api.g_varchar2) then
365       l_rec.segment29 := null;
366     end if;
367     if (l_rec.segment30 = hr_api.g_varchar2) then
368       l_rec.segment30 := null;
369     end if;
370   end if;
371   hr_utility.set_location(l_proc, 15);
372   --
373   -- call the ins_or_sel process
374   --
375   per_pod_ins.ins_or_sel
376     (p_segment1              => l_rec.segment1,
377      p_segment2              => l_rec.segment2,
378      p_segment3              => l_rec.segment3,
379      p_segment4              => l_rec.segment4,
380      p_segment5              => l_rec.segment5,
381      p_segment6              => l_rec.segment6,
382      p_segment7              => l_rec.segment7,
383      p_segment8              => l_rec.segment8,
384      p_segment9              => l_rec.segment9,
385      p_segment10             => l_rec.segment10,
386      p_segment11             => l_rec.segment11,
387      p_segment12             => l_rec.segment12,
388      p_segment13             => l_rec.segment13,
389      p_segment14             => l_rec.segment14,
390      p_segment15             => l_rec.segment15,
391      p_segment16             => l_rec.segment16,
392      p_segment17             => l_rec.segment17,
393      p_segment18             => l_rec.segment18,
394      p_segment19             => l_rec.segment19,
395      p_segment20             => l_rec.segment20,
396      p_segment21             => l_rec.segment21,
397      p_segment22             => l_rec.segment22,
398      p_segment23             => l_rec.segment23,
399      p_segment24             => l_rec.segment24,
400      p_segment25             => l_rec.segment25,
401      p_segment26             => l_rec.segment26,
402      p_segment27             => l_rec.segment27,
403      p_segment28             => l_rec.segment28,
404      p_segment29             => l_rec.segment29,
405      p_segment30             => l_rec.segment30,
406      p_business_group_id     => p_business_group_id,
407      p_position_definition_id => l_rec.position_definition_id,
408      p_name                  => p_name,
409      p_validate              => p_validate);
410   --
411   -- set the out argument
412   --
413   p_position_definition_id := l_rec.position_definition_id;
414   hr_utility.set_location(' Leaving:'||l_proc, 20);
415 --
416 end upd_or_sel;
417 --
418 end per_pod_upd;