DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_DPNT_EDC_SHD

Source


4 -- ----------------------------------------------------------------------------
1 Package Body ben_dpnt_edc_shd as
2 /* $Header: beedvrhi.pkb 120.2 2010/05/18 07:23:55 sgnanama noship $ */
3 --
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
11 -- |------------------------< return_api_dml_status >-------------------------|
8 g_package   varchar2(33) := '  ben_dpnt_edc_shd.';      -- Global Package Name
9 --
10 -- ----------------------------------------------------------------------------
12 -- ----------------------------------------------------------------------------
13 Function return_api_dml_status Return Boolean Is
14 --
15   l_proc 	varchar2(72) := g_package||'return_api_dml_status';
16 --
17 Begin
18   hr_utility.set_location('Entering:'||l_proc, 5);
19   --
20   Return (nvl(g_api_dml, false));
21   --
22   hr_utility.set_location(' Leaving:'||l_proc, 10);
23 End return_api_dml_status;
24 --
25 -- ----------------------------------------------------------------------------
26 -- |---------------------------< constraint_error >---------------------------|
27 -- ----------------------------------------------------------------------------
28 Procedure constraint_error
29             (p_constraint_name in all_constraints.constraint_name%TYPE) Is
30 --
31   l_proc 	varchar2(72) := g_package||'constraint_error';
32 --
33 Begin
34   hr_utility.set_location('Entering:'||l_proc, 5);
35   --
36   If (p_constraint_name = 'BEN_DPNT_ELIGY_CRIT_VALUES_F_FK1'
37    OR p_constraint_name = 'BEN_DPNT_ELIGY_CRIT_VALUES_F_FK2'
38    OR p_constraint_name = 'BEN_DPNT_ELIGY_CRIT_VALUES_F_FK3') Then
39     hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
40     hr_utility.set_message_token('PROCEDURE', l_proc);
41     hr_utility.set_message_token('STEP','5');
42     hr_utility.raise_error;
43   ElsIf (p_constraint_name = 'ben_dpnt_eligy_crit_values_f_PK') Then
44     hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
45     hr_utility.set_message_token('PROCEDURE', l_proc);
46     hr_utility.set_message_token('STEP','10');
47     hr_utility.raise_error;
48   Else
49     hr_utility.set_message(801, 'HR_7877_API_INVALID_CONSTRAINT');
50     hr_utility.set_message_token('PROCEDURE', l_proc);
51     hr_utility.set_message_token('CONSTRAINT_NAME', p_constraint_name);
52     hr_utility.raise_error;
53   End If;
54   --
55   hr_utility.set_location(' Leaving:'||l_proc, 10);
56 End constraint_error;
57 --
58 -- ----------------------------------------------------------------------------
59 -- |-----------------------------< api_updating >-----------------------------|
60 -- ----------------------------------------------------------------------------
61 Function api_updating
62   (p_effective_date		in date,
63    p_dpnt_eligy_crit_values_id		in number,
64    p_object_version_number	in number
65   ) Return Boolean Is
66 --
67   --
68   -- Cursor selects the 'current' row from the HR Schema
69   --
70   Cursor C_Sel1 is
71     select
72         dpnt_eligy_crit_values_id,
73 	dpnt_cvg_eligy_prfl_id,
74 	eligy_criteria_dpnt_id,
75 	effective_start_date,
76 	effective_end_date,
77 	ordr_num,
78 	number_value1,
79 	number_value2,
80 	char_value1,
81 	char_value2,
82 	date_value1,
83 	date_value2,
84         excld_flag,
85 	business_group_id,
86 	edc_attribute_category,
87 	edc_attribute1,
88 	edc_attribute2,
89 	edc_attribute3,
90 	edc_attribute4,
91 	edc_attribute5,
92 	edc_attribute6,
93 	edc_attribute7,
94 	edc_attribute8,
95 	edc_attribute9,
96 	edc_attribute10,
97 	edc_attribute11,
98 	edc_attribute12,
99 	edc_attribute13,
100 	edc_attribute14,
101 	edc_attribute15,
102 	edc_attribute16,
103 	edc_attribute17,
104 	edc_attribute18,
105 	edc_attribute19,
106 	edc_attribute20,
107 	edc_attribute21,
108 	edc_attribute22,
109 	edc_attribute23,
110 	edc_attribute24,
111 	edc_attribute25,
112 	edc_attribute26,
113 	edc_attribute27,
114 	edc_attribute28,
115 	edc_attribute29,
116 	edc_attribute30,
117 	object_version_number,
118         Char_value3,
119 	Char_value4,
120 	Number_value3,
121 	Number_value4,
122 	Date_value3,
123 	Date_value4
124 	from ben_dpnt_eligy_crit_values_f
125 	where dpnt_eligy_crit_values_id = p_dpnt_eligy_crit_values_id
126 	and p_effective_date
127 	between effective_start_date
128 	    and effective_end_date;
129 --
130   l_proc	varchar2(72)	:= g_package||'api_updating';
131   l_fct_ret	boolean;
132 --
133 Begin
134   hr_utility.set_location('Entering:'||l_proc, 5);
135   --
136   If (p_effective_date is null or
137       p_dpnt_eligy_crit_values_id is null or
138 	  p_object_version_number is null) then
139 	--
140     -- One of the primary key arguments is null therefore we must
141     -- set the returning function value to false
142     --
143     l_fct_ret := false;
144   Else
145      If (p_dpnt_eligy_crit_values_id = g_old_rec.dpnt_eligy_crit_values_id and
146          p_object_version_number = g_old_rec.object_version_number) Then
147       hr_utility.set_location(l_proc, 10);
148       --
149       -- The g_old_rec is current therefore we must
150       -- set the returning function to true
151       --
152       l_fct_ret := true;
153     Else
154       --
155       -- Select the current row
156       --
157       Open C_Sel1;
158       Fetch C_Sel1 Into g_old_rec;
159       If C_Sel1%notfound Then
160         Close C_Sel1;
161         --
162         -- The primary key is invalid therefore we must error
163         --
164         hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
165         hr_utility.raise_error;
169         hr_utility.set_message(801, 'HR_7155_OBJECT_INVALID');
166       End If;
167       Close C_Sel1;
168        If (p_object_version_number <> g_old_rec.object_version_number) Then
170         hr_utility.raise_error;
171       End If;
172       hr_utility.set_location(l_proc, 15);
173       l_fct_ret := true;
174     End If;
175   End If;
176   hr_utility.set_location(' Leaving:'||l_proc, 20);
177   Return (l_fct_ret);
178 --
179 End api_updating;
180 --
181 -- ----------------------------------------------------------------------------
182 -- |--------------------------< find_dt_del_modes >---------------------------|
183 -- ----------------------------------------------------------------------------
184 Procedure find_dt_del_modes
185 	(p_effective_date	in  date,
189 	 p_future_change out nocopy boolean,
186 	 p_base_key_value	in  number,
187 	 p_zap		 out nocopy boolean,
188 	 p_delete	 out nocopy boolean,
190 	 p_delete_next_change out nocopy boolean) is
191 --
192   l_proc 		varchar2(72) 	:= g_package||'find_dt_del_modes';
193 --
194   l_parent_key_value1	number;
195   l_parent_key_value2   number;
196   --
197   Cursor C_Sel1 Is
198     select  t.eligy_criteria_dpnt_id, t.dpnt_cvg_eligy_prfl_id
199     from    ben_dpnt_eligy_crit_values_f t
200     where   t.dpnt_eligy_crit_values_id = p_base_key_value
201     and     p_effective_date
202     between t.effective_start_date and t.effective_end_date;
203 --
204 Begin
205   hr_utility.set_location('Entering:'||l_proc, 5);
206   Open  C_Sel1;
207   Fetch C_Sel1 Into l_parent_key_value1,l_parent_key_value2;
208   If C_Sel1%notfound then
209     Close C_Sel1;
210     hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
211     hr_utility.set_message_token('PROCEDURE', l_proc);
212     hr_utility.set_message_token('STEP','10');
213     hr_utility.raise_error;
214   End If;
215   Close C_Sel1;
216   --
217   -- Call the corresponding datetrack api
218   --
219   dt_api.find_dt_del_modes
220 	(p_effective_date	=> p_effective_date,
221 	 p_base_table_name	=> 'ben_dpnt_eligy_crit_values_f',
222 	 p_base_key_column	=> 'dpnt_eligy_crit_values_id',
223 	 p_base_key_value	=> p_base_key_value,
224 --	 p_parent_table_name1	=> 'ben_eligy_criteria',
225 --	 p_parent_key_column1	=> 'eligy_criteria_dpnt_id',
226 --	 p_parent_key_value1	=> l_parent_key_value1,
227   	 p_parent_table_name2   => 'ben_dpnt_cvg_eligy_prfl_f',
228   	 p_parent_key_column2   => 'dpnt_cvg_eligy_prfl_id',
229   	 p_parent_key_value2    => l_parent_key_value2,
230 	 p_zap			=> p_zap,
231 	 p_delete		=> p_delete,
232 	 p_future_change	=> p_future_change,
233 	 p_delete_next_change	=> p_delete_next_change);
234   --
235   hr_utility.set_location(' Leaving:'||l_proc, 10);
236 End find_dt_del_modes;
237 --
238 -- ----------------------------------------------------------------------------
239 -- |--------------------------< find_dt_upd_modes >---------------------------|
240 -- ----------------------------------------------------------------------------
241 Procedure find_dt_upd_modes
242 	(p_effective_date	in  date,
243 	 p_base_key_value	in  number,
244 	 p_correction	 out nocopy boolean,
245 	 p_update	 out nocopy boolean,
246 	 p_update_override out nocopy boolean,
247 	 p_update_change_insert out nocopy boolean) is
248 --
249   l_proc 	varchar2(72) := g_package||'find_dt_upd_modes';
250 --
251 Begin
252   hr_utility.set_location('Entering:'||l_proc, 5);
253   --
254   -- Call the corresponding datetrack api
255   --
256   dt_api.find_dt_upd_modes
257 	(p_effective_date	=> p_effective_date,
258 	 p_base_table_name	=> 'ben_dpnt_eligy_crit_values_f',
259 	 p_base_key_column	=> 'dpnt_eligy_crit_values_id',
260 	 p_base_key_value	=> p_base_key_value,
261 	 p_correction		=> p_correction,
265   --
262 	 p_update		=> p_update,
263 	 p_update_override	=> p_update_override,
264 	 p_update_change_insert	=> p_update_change_insert);
266   hr_utility.set_location(' Leaving:'||l_proc, 10);
267 End find_dt_upd_modes;
268 --
269 -- ----------------------------------------------------------------------------
270 -- |------------------------< upd_effective_end_date >------------------------|
271 -- ----------------------------------------------------------------------------
272 Procedure upd_effective_end_date
273 	(p_effective_date		in date,
274 	 p_base_key_value		in number,
275 	 p_new_effective_end_date	in date,
276 	 p_validation_start_date	in date,
277 	 p_validation_end_date		in date,
278      p_object_version_number       out nocopy number) is
279 --
280   l_proc 		  varchar2(72) := g_package||'upd_effective_end_date';
281   l_object_version_number number;
282 --
283 Begin
284   hr_utility.set_location('Entering:'||l_proc, 5);
285   --
286   -- Because we are updating a row we must get the next object
287   -- version number.
288   --
289   l_object_version_number :=
290     dt_api.get_object_version_number
291 	(p_base_table_name	=> 'ben_dpnt_eligy_crit_values_f',
292 	 p_base_key_column	=> 'dpnt_eligy_crit_values_id',
293 	 p_base_key_value	=> p_base_key_value);
294   --
295   hr_utility.set_location(l_proc, 10);
296   g_api_dml := true;  -- Set the api dml status
297   --
298   -- Update the specified datetrack row setting the effective
299   -- end date to the specified new effective end date.
300   --
301   update  ben_dpnt_eligy_crit_values_f t
302   set	  t.effective_end_date	  = p_new_effective_end_date,
303 	  t.object_version_number = l_object_version_number
304   where	  t.dpnt_eligy_crit_values_id  = p_base_key_value
305   and	  p_effective_date
306   between t.effective_start_date and t.effective_end_date;
307   --
308   g_api_dml := false;   -- Unset the api dml status
309   p_object_version_number := l_object_version_number;
310   hr_utility.set_location(' Leaving:'||l_proc, 15);
311 --
312 Exception
313   When Others Then
314     g_api_dml := false;   -- Unset the api dml status
315     Raise;
316 End upd_effective_end_date;
317 --
318 -- ----------------------------------------------------------------------------
319 -- |---------------------------------< lck >----------------------------------|
320 -- ----------------------------------------------------------------------------
321 Procedure lck
322 	(p_effective_date	 in  date,
323 	 p_datetrack_mode	 in  varchar2,
324 	 p_dpnt_eligy_crit_values_id	 in  number,
325 	 p_object_version_number in  number,
326 	 p_validation_start_date out nocopy date,
327 	 p_validation_end_date	 out nocopy date) is
328 --
329   l_proc		  varchar2(72) := g_package||'lck';
330   l_validation_start_date date;
331   l_validation_end_date	  date;
332   l_object_invalid 	  exception;
333   l_argument		  varchar2(30);
334   --
335   -- Cursor C_Sel1 selects the current locked row as of session date
336   -- ensuring that the object version numbers match.
337   --
338   Cursor C_Sel1 is
339     select
340     dpnt_eligy_crit_values_id,
341 	dpnt_cvg_eligy_prfl_id,
342 	eligy_criteria_dpnt_id,
343 	effective_start_date,
344 	effective_end_date,
345 	ordr_num,
346 	number_value1,
347 	number_value2,
348 	char_value1,
349 	char_value2,
350 	date_value1,
351 	date_value2,
352         excld_flag,
353 	business_group_id,
354 	edc_attribute_category,
355 	edc_attribute1,
356 	edc_attribute2,
357 	edc_attribute3,
358 	edc_attribute4,
359 	edc_attribute5,
360 	edc_attribute6,
366 	edc_attribute12,
361 	edc_attribute7,
362 	edc_attribute8,
363 	edc_attribute9,
364 	edc_attribute10,
365 	edc_attribute11,
367 	edc_attribute13,
368 	edc_attribute14,
369 	edc_attribute15,
370 	edc_attribute16,
371 	edc_attribute17,
372 	edc_attribute18,
373 	edc_attribute19,
374 	edc_attribute20,
375 	edc_attribute21,
376 	edc_attribute22,
377 	edc_attribute23,
378 	edc_attribute24,
379 	edc_attribute25,
380 	edc_attribute26,
381 	edc_attribute27,
382 	edc_attribute28,
383 	edc_attribute29,
384 	edc_attribute30,
385 	object_version_number,
386         Char_value3,
387 	Char_value4,
388 	Number_value3,
389 	Number_value4,
390 	Date_value3,
391 	Date_value4
392 	from ben_dpnt_eligy_crit_values_f
393 	where dpnt_eligy_crit_values_id = p_dpnt_eligy_crit_values_id
394 	and p_effective_date
395     	between effective_start_date
396 	        and effective_end_date
397 	for update nowait;
398   --
399   --
400   --
401 Begin
402   hr_utility.set_location('Entering:'||l_proc, 5);
403   --
404   -- Ensure that all the mandatory arguments are not null
405   --
406   hr_api.mandatory_arg_error(p_api_name       => l_proc,
407                              p_argument       => 'effective_date',
408                              p_argument_value => p_effective_date);
409   --
410   hr_api.mandatory_arg_error(p_api_name       => l_proc,
411                              p_argument       => 'datetrack_mode',
415                              p_argument       => 'dpnt_eligy_crit_values_id',
412                              p_argument_value => p_datetrack_mode);
413   --
414   hr_api.mandatory_arg_error(p_api_name       => l_proc,
416                              p_argument_value => p_dpnt_eligy_crit_values_id);
417   --
418   hr_api.mandatory_arg_error(p_api_name       => l_proc,
419                              p_argument       => 'object_version_number',
420                              p_argument_value => p_object_version_number);
421   --
422   -- Check to ensure the datetrack mode is not INSERT.
423   --
424   If (p_datetrack_mode <> 'INSERT') then
425     --
426     -- We must select and lock the current row.
427     --
428     Open  C_Sel1;
429     Fetch C_Sel1 Into g_old_rec;
430     If C_Sel1%notfound then
431       Close C_Sel1;
432       --
433       -- The primary key is invalid therefore we must error
434       --
435       hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
436       hr_utility.raise_error;
437     End If;
438     Close C_Sel1;
439     If (p_object_version_number <> g_old_rec.object_version_number) Then
440         hr_utility.set_message(801, 'HR_7155_OBJECT_INVALID');
441         hr_utility.raise_error;
442       End If;
443     hr_utility.set_location(l_proc, 15);
444     --
445     --
446     -- Validate the datetrack mode mode getting the validation start
447     -- and end dates for the specified datetrack operation.
448     --
449     dt_api.validate_dt_mode
450 	(p_effective_date	   => p_effective_date,
451 	 p_datetrack_mode	   => p_datetrack_mode,
452 	 p_base_table_name	   => 'ben_dpnt_eligy_crit_values_f',
453 	 p_base_key_column	   => 'dpnt_eligy_crit_values_id',
454 	 p_base_key_value 	   => p_dpnt_eligy_crit_values_id,
455 --	 p_parent_table_name1      => 'ben_eligy_criteria',
456 --	 p_parent_key_column1      => 'eligy_criteria_dpnt_id',
457 --	 p_parent_key_value1       => g_old_rec.eligy_criteria_dpnt_id,
458          p_parent_table_name2      => 'ben_dpnt_cvg_eligy_prfl_f',
459 	 p_parent_key_column1      => 'dpnt_cvg_eligy_prfl_id',
460 	 p_parent_key_value2       =>  g_old_rec.dpnt_cvg_eligy_prfl_id,
461          p_enforce_foreign_locking => true,
462 	 p_validation_start_date   => l_validation_start_date,
463  	 p_validation_end_date	   => l_validation_end_date);
464   Else
465     --
466     -- We are doing a datetrack 'INSERT' which is illegal within this
467     -- procedure therefore we must error (note: to lck on insert the
468     -- private procedure ins_lck should be called).
469     --
470     hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
471     hr_utility.set_message_token('PROCEDURE', l_proc);
472     hr_utility.set_message_token('STEP','20');
473     hr_utility.raise_error;
474   End If;
475   --
476   -- Set the validation start and end date OUT arguments
477   --
478   p_validation_start_date := l_validation_start_date;
479   p_validation_end_date   := l_validation_end_date;
480   --
481   hr_utility.set_location(' Leaving:'||l_proc, 30);
482 --
483 -- We need to trap the ORA LOCK exception
484 --
485 Exception
486   When HR_Api.Object_Locked then
487     --
488     -- The object is locked therefore we need to supply a meaningful
489     -- error message.
490     --
491     hr_utility.set_message(801, 'HR_7165_OBJECT_LOCKED');
492     hr_utility.set_message_token('TABLE_NAME', 'ben_dpnt_eligy_crit_values_f');
493     hr_utility.raise_error;
494   When l_object_invalid then
495     --
496     -- The object doesn't exist or is invalid
497     --
498     hr_utility.set_message(801, 'HR_7155_OBJECT_INVALID');
499     hr_utility.set_message_token('TABLE_NAME', 'ben_dpnt_eligy_crit_values_f');
500     hr_utility.raise_error;
501 End lck;
502 --
503 -- ----------------------------------------------------------------------------
504 -- |-----------------------------< convert_args >-----------------------------|
505 -- ----------------------------------------------------------------------------
506 Function convert_args
507   (
508   p_dpnt_eligy_crit_values_id                             Number,
509   p_dpnt_cvg_eligy_prfl_id                                    Number,
510   p_eligy_criteria_dpnt_id                                Number,
511   p_effective_start_date                             Date,
512   p_effective_end_date                               Date,
513   p_ordr_num                                         Number,
514   p_number_value1                                    Number,
515   p_number_value2                                    Number,
516   p_char_value1                                      Varchar2,
517   p_char_value2                                      Varchar2,
518   p_date_value1                                      Date,
519   p_date_value2                                      Date,
520   p_excld_flag                                       Varchar2,
521   p_business_group_id                                Number,
522   p_edc_attribute_category                           Varchar2,
523   p_edc_attribute1                                   Varchar2,
524   p_edc_attribute2                                   Varchar2,
528   p_edc_attribute6                                   Varchar2,
525   p_edc_attribute3                                   Varchar2,
526   p_edc_attribute4                                   Varchar2,
527   p_edc_attribute5                                   Varchar2,
529   p_edc_attribute7                                   Varchar2,
530   p_edc_attribute8                                   Varchar2,
531   p_edc_attribute9                                   Varchar2,
532   p_edc_attribute10                                  Varchar2,
533   p_edc_attribute11                                  Varchar2,
534   p_edc_attribute12                                  Varchar2,
535   p_edc_attribute13                                  Varchar2,
536   p_edc_attribute14                                  Varchar2,
537   p_edc_attribute15                                  Varchar2,
538   p_edc_attribute16                                  Varchar2,
539   p_edc_attribute17                                  Varchar2,
540   p_edc_attribute18                                  Varchar2,
541   p_edc_attribute19                                  Varchar2,
542   p_edc_attribute20                                  Varchar2,
543   p_edc_attribute21                                  Varchar2,
544   p_edc_attribute22                                  Varchar2,
545   p_edc_attribute23                                  Varchar2,
546   p_edc_attribute24                                  Varchar2,
547   p_edc_attribute25                                  Varchar2,
548   p_edc_attribute26                                  Varchar2,
549   p_edc_attribute27                                  Varchar2,
550   p_edc_attribute28                                  Varchar2,
551   p_edc_attribute29                                  Varchar2,
552   p_edc_attribute30                                  Varchar2,
553   p_object_version_number                            Number  ,
554   p_char_value3                                      Varchar2,
555   p_char_value4                                      Varchar2,
556   p_number_value3                                    Number,
557   p_number_value4                                    Number,
558   p_date_value3                                      Date,
559   p_date_value4                                      Date
560   )
561 Return g_rec_type is
562 --
563   l_rec	  g_rec_type;
564   l_proc  varchar2(72) := g_package||'convert_args';
565 --
566 Begin
567   --
568   hr_utility.set_location('Entering:'||l_proc, 5);
569   --
570   -- Convert arguments into local l_rec structure.
571   --
572   l_rec.dpnt_eligy_crit_values_id                        :=  p_dpnt_eligy_crit_values_id;
573   l_rec.dpnt_cvg_eligy_prfl_id                               :=  p_dpnt_cvg_eligy_prfl_id;
574   l_rec.eligy_criteria_dpnt_id                           :=  p_eligy_criteria_dpnt_id;
575   l_rec.effective_start_date                        :=  p_effective_start_date;
576   l_rec.effective_end_date                          :=  p_effective_end_date;
577   l_rec.ordr_num                                    :=  p_ordr_num;
578   l_rec.number_value1                               :=  p_number_value1;
579   l_rec.number_value2                               :=  p_number_value2;
580   l_rec.char_value1                                 :=  p_char_value1;
581   l_rec.char_value2                                 :=  p_char_value2;
582   l_rec.date_value1                                 :=  p_date_value1;
583   l_rec.date_value2                                 :=  p_date_value2;
584   l_rec.excld_flag                                  :=  p_excld_flag;
585   l_rec.business_group_id                           :=  p_business_group_id;
586   l_rec.edc_attribute_category                      :=  p_edc_attribute_category;
587   l_rec.edc_attribute1                              :=  p_edc_attribute1;
588   l_rec.edc_attribute2                              :=  p_edc_attribute2;
589   l_rec.edc_attribute3                              :=  p_edc_attribute3;
590   l_rec.edc_attribute4                              :=  p_edc_attribute4;
591   l_rec.edc_attribute5                              :=  p_edc_attribute5;
592   l_rec.edc_attribute6                              :=  p_edc_attribute6;
593   l_rec.edc_attribute7                              :=  p_edc_attribute7;
594   l_rec.edc_attribute8                              :=  p_edc_attribute8;
595   l_rec.edc_attribute9                              :=  p_edc_attribute9;
596   l_rec.edc_attribute10                             :=  p_edc_attribute10;
597   l_rec.edc_attribute11                             :=  p_edc_attribute11;
598   l_rec.edc_attribute12                             :=  p_edc_attribute12;
599   l_rec.edc_attribute13                             :=  p_edc_attribute13;
600   l_rec.edc_attribute14                             :=  p_edc_attribute14;
601   l_rec.edc_attribute15                             :=  p_edc_attribute15;
602   l_rec.edc_attribute16                             :=  p_edc_attribute16;
603   l_rec.edc_attribute17                             :=  p_edc_attribute17;
604   l_rec.edc_attribute18                             :=  p_edc_attribute18;
605   l_rec.edc_attribute19                             :=  p_edc_attribute19;
606   l_rec.edc_attribute20                             :=  p_edc_attribute20;
607   l_rec.edc_attribute21                             :=  p_edc_attribute21;
608   l_rec.edc_attribute22                             :=  p_edc_attribute22;
612   l_rec.edc_attribute26                             :=  p_edc_attribute26;
609   l_rec.edc_attribute23                             :=  p_edc_attribute23;
610   l_rec.edc_attribute24                             :=  p_edc_attribute24;
611   l_rec.edc_attribute25                             :=  p_edc_attribute25;
613   l_rec.edc_attribute27                             :=  p_edc_attribute27;
614   l_rec.edc_attribute28                             :=  p_edc_attribute28;
615   l_rec.edc_attribute29                             :=  p_edc_attribute29;
616   l_rec.edc_attribute30                             :=  p_edc_attribute30;
617   l_rec.object_version_number                       :=  p_object_version_number;
618   l_rec.char_value3                                 :=  p_char_value3;
619   l_rec.char_value4                                 :=  p_char_value4;
620   l_rec.number_value3                               :=  p_number_value3;
621   l_rec.number_value4                               :=  p_number_value4;
622   l_rec.date_value3                                 :=  p_date_value3;
623   l_rec.date_value4                                 :=  p_date_value4;
624   --
625   -- Return the plsql record structure.
626   --
627   hr_utility.set_location(' Leaving:'||l_proc, 10);
628   Return(l_rec);
629 --
630 End convert_args;
631 --
632 end ben_dpnt_edc_shd;