DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_PROCESS_COBRA_PERSON_SS

Source


1 PACKAGE body ben_process_cobra_person_ss AS
2 /* $Header: bencbrwf.pkb 115.7 2004/02/26 04:01:41 vvprabhu noship $*/
3 
4 -- Global variables
5   g_package               constant varchar2(75):='BEN_PROCESS_COBRA_PERSON_SS.';
6   g_wf_review_regn_itm_attr_name  constant varchar2(2000)
7                                   := 'HR_REVIEW_REGION_ITEM';
8 
9   g_data_error                   exception;
10 
11 --
12 -- ---------------------------------------------------------------------------+
13 -- ----------------------------- < process_api > -----------------------------+
14 -- ---------------------------------------------------------------------------+
15 -- Purpose: This procedure will be invoked in workflow notification
16 --          when an approver approves all the changes.  This procedure
17 --          will call the api to update to the database with p_validate
18 --          equal to false.
19 -- ---------------------------------------------------------------------------+
20 PROCEDURE process_api
21           (p_validate IN BOOLEAN DEFAULT FALSE
22           ,p_transaction_step_id IN NUMBER)
23 IS
24 --
25   l_effective_start_date             date default null;
26   l_effective_end_date               date default null;
27   l_full_name                        per_all_people_f.full_name%type;
28   l_comment_id                       per_all_people_f.comment_id%type;
29   l_name_combination_warning         boolean default null;
30   l_assign_payroll_warning           boolean default null;
31   l_orig_hire_warning                boolean default null;
32   l_employee_number                  per_all_people_f.employee_number%type
33                                      := hr_api.g_varchar2;
34   l_ovn                              number default null;
35   l_person_id                        per_all_people_f.person_id%type
36                                      default null;
37 
38 --Start Registration
39 
40   l_assignment_id                    number default null;
41   l_povn                             number default null;
42   l_aovn                             number default null;
43   l_assignment_sequence              number default null;
44   l_assignment_number                number default null;
45   l_assignment_extra_info_id         number;
46   l_aei_object_version_number        number;
47   l_flow_name                        varchar2(30) default null;
48   l_asg_effective_end_date           date;
49   l_asg_effective_start_date         date;
50   prflvalue                          varchar2(2000) default null;
51   l_item_type                        wf_items.item_type%type default null;
52   l_item_key                         wf_items.item_key%type default null;
53   l_transaction_step                 number default null;
54   l_life_event_transaction_step      number default null;
55   l_user_id               number;
56   l_user_name             fnd_user.user_name%TYPE;
57   l_user_pswd             fnd_user.encrypted_user_password%TYPE;
58   l_pswd_hint             fnd_user.description%TYPE;
59   l_api_error             boolean;
60   l_respons_id            number ;
61   l_respons_appl_id       number ;
62   l_owner                 number ;
63   l_session_number        number ;
64   l_start_date            date;
65   l_end_date              date;
66   l_last_logon_date       date;
67   l_password_date         date;
68   l_password_accesses_left                 number ;
69   l_password_lifespan_accesses             number ;
70   l_password_lifespan_days                 number ;
71   l_employee_id                            number ;
72   l_customer_id                            number ;
73   l_supplier_id                            number ;
74   l_business_group_id                      number ;
75   l_email_address                          varchar2(240);
76   l_fax                                    varchar2(80);
77   l_ptnl_ler ben_ptnl_ler_for_per%ROWTYPE;
78   l_dummy_num number;
79   l_life_event_ovn number;
80   l_life_event_eff_date   date;
81   --l_ptnl_ler_for_per_id                    varchar2(80);
82   --l_ler_csd_by_ptnl_ler_id                 ben_ptnl_ler_for_per.csd_by_ptnl_ler_for_per_id%type;
83   l_ler_lf_evt_ocrd_dt                     ben_ptnl_ler_for_per.lf_evt_ocrd_dt%type;
84   --l_new_ler_lf_evt_ocrd_dt                 varchar2(80);
85   l_flow_mode             varchar2(80);
86   l_subflow_mode          varchar2(80);
87   l_life_event_name       ben_ler_f.name%type;
88   --l_evt_transaction_step_id varchar2(80);
89   --l_error_message         long default null;
90 
91 
92 BEGIN
93 --
94   SAVEPOINT process_basic_details;
95 
96 --
97 -- Get the person_id first.  If it is null, that means we'll create a new
98 -- employee.  If it is not null, we will do an update to the person record.
99 
100   l_person_id := hr_transaction_api.get_number_value
101                                 (p_transaction_step_id => p_transaction_step_id
102                                 ,p_name => 'P_PERSON_ID');
103 --
104   l_employee_number := hr_transaction_api.get_varchar2_value
105                           (p_transaction_step_id => p_transaction_step_id
106                           ,p_name => 'P_EMPLOYEE_NUMBER');
107 --
108   l_ovn := hr_transaction_api.get_number_value
109              (p_transaction_step_id => p_transaction_step_id
110              ,p_name => 'P_OBJECT_VERSION_NUMBER');
111 --
112   l_flow_name := hr_transaction_api.get_varchar2_value
113                           (p_transaction_step_id => p_transaction_step_id
114                           ,p_name => 'P_FLOW_NAME');
115 
116   l_item_type := hr_transaction_api.get_varchar2_value
117                           (p_transaction_step_id => p_transaction_step_id
118                           ,p_name => 'P_ITEM_TYPE');
119 
120   l_item_key := hr_transaction_api.get_varchar2_value
121                           (p_transaction_step_id => p_transaction_step_id
122                           ,p_name => 'P_ITEM_KEY');
123 --
124 
125   if l_flow_name = 'Cobra' then
126    hr_contact_api.create_person
127     (p_validate                => p_validate
128  --
129     --,p_start_date              => sysdate
130     ,p_start_date              => hr_transaction_api.get_date_value
131                                    (p_transaction_step_id => p_transaction_step_id
132                                    ,p_name => 'P_DATE_START')
133 --
134     ,p_business_group_id       => hr_transaction_api.get_number_value
135                                    (p_transaction_step_id => p_transaction_step_id
136                                    ,p_name => 'P_BUSINESS_GROUP_ID')
137 --
138     ,p_last_name               => hr_transaction_api.get_varchar2_value
139                                   (p_transaction_step_id => p_transaction_step_id
140                                   ,p_name => 'P_LAST_NAME')
141 --
142     ,p_sex                     => hr_transaction_api.get_varchar2_value
143                                    (p_transaction_step_id => p_transaction_step_id
144                                    ,p_name => 'P_SEX')
145 --
146     ,p_person_type_id          => null
147 --
148     ,p_comments                => hr_transaction_api.get_varchar2_value
149                                    (p_transaction_step_id => p_transaction_step_id
150                                    ,p_name => 'P_PER_COMMENTS')
151 --
152     ,p_date_employee_data_verified => hr_transaction_api.get_date_value
153                                 (p_transaction_step_id => p_transaction_step_id
154                                 ,p_name => 'P_DATE_EMPLOYEE_DATA_VERIFIED')
155 --
156     ,p_date_of_birth            => hr_transaction_api.get_date_value
157                                    (p_transaction_step_id => p_transaction_step_id
158                                    ,p_name => 'P_DATE_OF_BIRTH')
159 --
160     ,p_email_address            => hr_transaction_api.get_varchar2_value
161                                    (p_transaction_step_id => p_transaction_step_id
162                                    ,p_name => 'P_EMAIL_ADDRESS')
163 --
164     ,p_expense_check_send_to_addres => hr_transaction_api.get_varchar2_value
165                                    (p_transaction_step_id => p_transaction_step_id
166                                    ,p_name => 'P_EXPENSE_CHECK_SEND_TO_ADDRES')
167 --
168     ,p_first_name               => hr_transaction_api.get_varchar2_value
169                                    (p_transaction_step_id => p_transaction_step_id
170                                    ,p_name => 'P_FIRST_NAME')
171 --
172     ,p_known_as                 => hr_transaction_api.get_varchar2_value
173                                     (p_transaction_step_id => p_transaction_step_id
174                                     ,p_name => 'P_KNOWN_AS')
175 --
176     ,p_marital_status           => hr_transaction_api.get_varchar2_value
177                                    (p_transaction_step_id => p_transaction_step_id
178                                    ,p_name => 'P_MARITAL_STATUS')
179 --
180     ,p_middle_names             => hr_transaction_api.get_varchar2_value
181                                    (p_transaction_step_id => p_transaction_step_id
182                                    ,p_name => 'P_MIDDLE_NAMES')
183 --
184     ,p_nationality              => hr_transaction_api.get_varchar2_value
185                                 (p_transaction_step_id => p_transaction_step_id
186                                 ,p_name => 'P_NATIONALITY')
187 --
188     ,p_national_identifier      => hr_transaction_api.get_varchar2_value
189                                 (p_transaction_step_id => p_transaction_step_id
190                                 ,p_name => 'P_NATIONAL_IDENTIFIER')
191 --
192     ,p_previous_last_name       => hr_transaction_api.get_varchar2_value
193                                 (p_transaction_step_id => p_transaction_step_id
194                                 ,p_name => 'P_PREVIOUS_LAST_NAME')
195 --
196     ,p_registered_disabled_flag => hr_transaction_api.get_varchar2_value
197                                 (p_transaction_step_id => p_transaction_step_id
198                                 ,p_name => 'P_REGISTERED_DISABLED_FLAG')
199 --
200     ,p_title                    => hr_transaction_api.get_varchar2_value
201                                 (p_transaction_step_id => p_transaction_step_id
202                                 ,p_name => 'P_TITLE')
203 --
204     ,p_vendor_id                => hr_transaction_api.get_number_value
205                                 (p_transaction_step_id => p_transaction_step_id
206                                 ,p_name => 'P_VENDOR_ID')
207 --
208     ,p_work_telephone           => hr_transaction_api.get_varchar2_value
209                                 (p_transaction_step_id => p_transaction_step_id
210                                 ,p_name => 'P_WORK_TELEPHONE')
211 --
212     ,p_attribute_category       => hr_transaction_api.get_varchar2_value
213                                 (p_transaction_step_id => p_transaction_step_id
214                                 ,p_name => 'P_ATTRIBUTE_CATEGORY')
215 --
216     ,p_attribute1               => hr_transaction_api.get_varchar2_value
217                                 (p_transaction_step_id => p_transaction_step_id
218                                 ,p_name => 'P_ATTRIBUTE1')
219 --
220     ,p_attribute2               => hr_transaction_api.get_varchar2_value
221                                 (p_transaction_step_id => p_transaction_step_id
222                                 ,p_name => 'P_ATTRIBUTE2')
223 --
224     ,p_attribute3               => hr_transaction_api.get_varchar2_value
225                                 (p_transaction_step_id => p_transaction_step_id
226                                 ,p_name => 'P_ATTRIBUTE3')
227 --
228     ,p_attribute4               => hr_transaction_api.get_varchar2_value
229                                 (p_transaction_step_id => p_transaction_step_id
230                                 ,p_name => 'P_ATTRIBUTE4')
231 --
232     ,p_attribute5               => hr_transaction_api.get_varchar2_value
233                                 (p_transaction_step_id => p_transaction_step_id
234                                 ,p_name => 'P_ATTRIBUTE5')
235 --
236     ,p_attribute6               => hr_transaction_api.get_varchar2_value
237                                 (p_transaction_step_id => p_transaction_step_id
238                                 ,p_name => 'P_ATTRIBUTE6')
239 --
240     ,p_attribute7               => hr_transaction_api.get_varchar2_value
241                                 (p_transaction_step_id => p_transaction_step_id
242                                 ,p_name => 'P_ATTRIBUTE7')
243 --
244     ,p_attribute8               => hr_transaction_api.get_varchar2_value
245                                 (p_transaction_step_id => p_transaction_step_id
246                                 ,p_name => 'P_ATTRIBUTE8')
247 --
248     ,p_attribute9               => hr_transaction_api.get_varchar2_value
249                                 (p_transaction_step_id => p_transaction_step_id
250                                 ,p_name => 'P_ATTRIBUTE9')
251 --
252     ,p_attribute10              => hr_transaction_api.get_varchar2_value
253                                 (p_transaction_step_id => p_transaction_step_id
254                                 ,p_name => 'P_ATTRIBUTE10')
255 --
256     ,p_attribute11              => hr_transaction_api.get_varchar2_value
257                                 (p_transaction_step_id => p_transaction_step_id
258                                 ,p_name => 'P_ATTRIBUTE11')
259 --
260     ,p_attribute12              => hr_transaction_api.get_varchar2_value
261                                 (p_transaction_step_id => p_transaction_step_id
262                                 ,p_name => 'P_ATTRIBUTE12')
263 --
264     ,p_attribute13              => hr_transaction_api.get_varchar2_value
265                                 (p_transaction_step_id => p_transaction_step_id
266                                 ,p_name => 'P_ATTRIBUTE13')
267 --
268     ,p_attribute14              => hr_transaction_api.get_varchar2_value
269                                 (p_transaction_step_id => p_transaction_step_id
270                                 ,p_name => 'P_ATTRIBUTE14')
271 --
272     ,p_attribute15              => hr_transaction_api.get_varchar2_value
273                                 (p_transaction_step_id => p_transaction_step_id
274                                 ,p_name => 'P_ATTRIBUTE15')
275 --
276     ,p_attribute16              => hr_transaction_api.get_varchar2_value
277                                 (p_transaction_step_id => p_transaction_step_id
278                                 ,p_name => 'P_ATTRIBUTE16')
279 --
280     ,p_attribute17              => hr_transaction_api.get_varchar2_value
281                                 (p_transaction_step_id => p_transaction_step_id
282                                 ,p_name => 'P_ATTRIBUTE17')
283 --
284     ,p_attribute18              => hr_transaction_api.get_varchar2_value
285                                 (p_transaction_step_id => p_transaction_step_id
286                                 ,p_name => 'P_ATTRIBUTE18')
287 --
288     ,p_attribute19              => hr_transaction_api.get_varchar2_value
289                                 (p_transaction_step_id => p_transaction_step_id
290                                 ,p_name => 'P_ATTRIBUTE19')
291 --
292     ,p_attribute20              => hr_transaction_api.get_varchar2_value
293                                 (p_transaction_step_id => p_transaction_step_id
294                                 ,p_name => 'P_ATTRIBUTE20')
295 --
296     ,p_attribute21              => hr_transaction_api.get_varchar2_value
297                                 (p_transaction_step_id => p_transaction_step_id
298                                 ,p_name => 'P_ATTRIBUTE21')
299 --
300     ,p_attribute22              => hr_transaction_api.get_varchar2_value
301                                 (p_transaction_step_id => p_transaction_step_id
302                                 ,p_name => 'P_ATTRIBUTE22')
303 --
304     ,p_attribute23              => hr_transaction_api.get_varchar2_value
305                                 (p_transaction_step_id => p_transaction_step_id
306                                 ,p_name => 'P_ATTRIBUTE23')
307 --
308     ,p_attribute24              => hr_transaction_api.get_varchar2_value
309                                 (p_transaction_step_id => p_transaction_step_id
310                                 ,p_name => 'P_ATTRIBUTE24')
311 --
312     ,p_attribute25              => hr_transaction_api.get_varchar2_value
313                                 (p_transaction_step_id => p_transaction_step_id
314                                 ,p_name => 'P_ATTRIBUTE25')
315 --
316     ,p_attribute26              => hr_transaction_api.get_varchar2_value
317                                 (p_transaction_step_id => p_transaction_step_id
318                                 ,p_name => 'P_ATTRIBUTE26')
319 --
320     ,p_attribute27              => hr_transaction_api.get_varchar2_value
321                                 (p_transaction_step_id => p_transaction_step_id
322                                 ,p_name => 'P_ATTRIBUTE27')
323 --
324     ,p_attribute28              => hr_transaction_api.get_varchar2_value
325                                 (p_transaction_step_id => p_transaction_step_id
326                                 ,p_name => 'P_ATTRIBUTE28')
327 --
328     ,p_attribute29              => hr_transaction_api.get_varchar2_value
329                                 (p_transaction_step_id => p_transaction_step_id
330                                 ,p_name => 'P_ATTRIBUTE29')
331 --
332     ,p_attribute30              => hr_transaction_api.get_varchar2_value
333                                 (p_transaction_step_id => p_transaction_step_id
334                                 ,p_name => 'P_ATTRIBUTE30')
335 --
336     ,p_per_information_category => hr_transaction_api.get_varchar2_value
337                                 (p_transaction_step_id => p_transaction_step_id
338                                 ,p_name => 'P_PER_INFORMATION_CATEGORY')
339 --
340     ,p_per_information1         => hr_transaction_api.get_varchar2_value
341                                 (p_transaction_step_id => p_transaction_step_id
342                                 ,p_name => 'P_PER_INFORMATION1')
343 --
344     ,p_per_information2         => hr_transaction_api.get_varchar2_value
345                                 (p_transaction_step_id => p_transaction_step_id
346                                 ,p_name => 'P_PER_INFORMATION2')
347 --
348     ,p_per_information3         => hr_transaction_api.get_varchar2_value
349                                 (p_transaction_step_id => p_transaction_step_id
350                                 ,p_name => 'P_PER_INFORMATION3')
351 --
352     ,p_per_information4         => hr_transaction_api.get_varchar2_value
353                                 (p_transaction_step_id => p_transaction_step_id
354                                 ,p_name => 'P_PER_INFORMATION4')
355 --
356     ,p_per_information5         => hr_transaction_api.get_varchar2_value
357                                 (p_transaction_step_id => p_transaction_step_id
358                                 ,p_name => 'P_PER_INFORMATION5')
359 --
360     ,p_per_information6         => hr_transaction_api.get_varchar2_value
361                                 (p_transaction_step_id => p_transaction_step_id
362                                 ,p_name => 'P_PER_INFORMATION6')
363 --
364     ,p_per_information7         => hr_transaction_api.get_varchar2_value
365                                 (p_transaction_step_id => p_transaction_step_id
366                                 ,p_name => 'P_PER_INFORMATION7')
367 --
368     ,p_per_information8         => hr_transaction_api.get_varchar2_value
369                                 (p_transaction_step_id => p_transaction_step_id
370                                 ,p_name => 'P_PER_INFORMATION8')
371 --
372     ,p_per_information9         => hr_transaction_api.get_varchar2_value
373                                 (p_transaction_step_id => p_transaction_step_id
374                                 ,p_name => 'P_PER_INFORMATION9')
375 --
376     ,p_per_information10        => hr_transaction_api.get_varchar2_value
377                                 (p_transaction_step_id => p_transaction_step_id
378                                 ,p_name => 'P_PER_INFORMATION10')
379 --
380     ,p_per_information11        => hr_transaction_api.get_varchar2_value
381                                 (p_transaction_step_id => p_transaction_step_id
382                                 ,p_name => 'P_PER_INFORMATION11')
383 
384 --
385     ,p_per_information12        => hr_transaction_api.get_varchar2_value
386                                 (p_transaction_step_id => p_transaction_step_id
387                                 ,p_name => 'P_PER_INFORMATION12')
388 --
389     ,p_per_information13        => hr_transaction_api.get_varchar2_value
390                                 (p_transaction_step_id => p_transaction_step_id
391                                 ,p_name => 'P_PER_INFORMATION13')
392 --
393     ,p_per_information14        => hr_transaction_api.get_varchar2_value
394                                 (p_transaction_step_id => p_transaction_step_id
395                                 ,p_name => 'P_PER_INFORMATION14')
396 --
397     ,p_per_information15        => hr_transaction_api.get_varchar2_value
398                                 (p_transaction_step_id => p_transaction_step_id
399                                 ,p_name => 'P_PER_INFORMATION15')
400 --
401     ,p_per_information16        => hr_transaction_api.get_varchar2_value
402                                 (p_transaction_step_id => p_transaction_step_id
403                                 ,p_name => 'P_PER_INFORMATION16')
404 --
405     ,p_per_information17        => hr_transaction_api.get_varchar2_value
406                                 (p_transaction_step_id => p_transaction_step_id
407                                 ,p_name => 'P_PER_INFORMATION17')
408 --
409     ,p_per_information18        => hr_transaction_api.get_varchar2_value
410                                 (p_transaction_step_id => p_transaction_step_id
411                                 ,p_name => 'P_PER_INFORMATION18')
412 --
413     ,p_per_information19        => hr_transaction_api.get_varchar2_value
414                                 (p_transaction_step_id => p_transaction_step_id
415                                 ,p_name => 'P_PER_INFORMATION19')
416 --
417     ,p_per_information20        => hr_transaction_api.get_varchar2_value
418                                 (p_transaction_step_id => p_transaction_step_id
419                                 ,p_name => 'P_PER_INFORMATION20')
420 --
421     ,p_per_information21        => hr_transaction_api.get_varchar2_value
422                                 (p_transaction_step_id => p_transaction_step_id
423                                 ,p_name => 'P_PER_INFORMATION21')
424 --
425     ,p_per_information22        => hr_transaction_api.get_varchar2_value
426                                 (p_transaction_step_id => p_transaction_step_id
427                                 ,p_name => 'P_PER_INFORMATION22')
428 --
429     ,p_per_information23        => hr_transaction_api.get_varchar2_value
430                                 (p_transaction_step_id => p_transaction_step_id
431                                 ,p_name => 'P_PER_INFORMATION23')
432 --
433     ,p_per_information24        => hr_transaction_api.get_varchar2_value
434                                 (p_transaction_step_id => p_transaction_step_id
435                                 ,p_name => 'P_PER_INFORMATION24')
436 --
437     ,p_per_information25        => hr_transaction_api.get_varchar2_value
438                                 (p_transaction_step_id => p_transaction_step_id
439                                 ,p_name => 'P_PER_INFORMATION25')
440 --
441     ,p_per_information26        => hr_transaction_api.get_varchar2_value
442                                 (p_transaction_step_id => p_transaction_step_id
443                                 ,p_name => 'P_PER_INFORMATION26')
444 --
445     ,p_per_information27        => hr_transaction_api.get_varchar2_value
446                                 (p_transaction_step_id => p_transaction_step_id
447                                 ,p_name => 'P_PER_INFORMATION27')
448 --
449     ,p_per_information28        => hr_transaction_api.get_varchar2_value
450                                 (p_transaction_step_id => p_transaction_step_id
451                                 ,p_name => 'P_PER_INFORMATION28')
452 --
453     ,p_per_information29        => hr_transaction_api.get_varchar2_value
454                                 (p_transaction_step_id => p_transaction_step_id
455                                 ,p_name => 'P_PER_INFORMATION29')
456 --
457     ,p_per_information30        => hr_transaction_api.get_varchar2_value
458                                 (p_transaction_step_id => p_transaction_step_id
459                                 ,p_name => 'P_PER_INFORMATION30')
460 --
461     ,p_correspondence_language  => hr_transaction_api.get_varchar2_value
462                                 (p_transaction_step_id => p_transaction_step_id
463                                 ,p_name => 'P_CORRESPONDENCE_LANGUAGE')
464 --
465     ,p_honors                   => hr_transaction_api.get_varchar2_value
466                                 (p_transaction_step_id => p_transaction_step_id
467                                 ,p_name => 'P_HONORS')
468 --
469     ,p_pre_name_adjunct         => hr_transaction_api.get_varchar2_value
470                                 (p_transaction_step_id => p_transaction_step_id
471                                 ,p_name => 'P_PRE_NAME_ADJUNCT')
472 --
473     ,p_suffix                   => hr_transaction_api.get_varchar2_value
474                                 (p_transaction_step_id => p_transaction_step_id
475                                 ,p_name => 'P_SUFFIX')
476 --
477     ,p_town_of_birth           => hr_transaction_api.get_varchar2_value
478                                 (p_transaction_step_id => p_transaction_step_id
479                                 ,p_name => 'P_TOWN_OF_BIRTH')
480 --
481     ,p_region_of_birth         => hr_transaction_api.get_varchar2_value
482                                 (p_transaction_step_id => p_transaction_step_id
483                                 ,p_name => 'P_REGION_OF_BIRTH')
484 --
485     ,p_country_of_birth        => hr_transaction_api.get_varchar2_value
486                                 (p_transaction_step_id => p_transaction_step_id
487                                 ,p_name => 'P_COUNTRY_OF_BIRTH')
488 --
489     ,p_global_person_id        => hr_transaction_api.get_varchar2_value
490                                 (p_transaction_step_id => p_transaction_step_id
491                                 ,p_name => 'P_GLOBAL_PERSON_ID')
492 --
493     ,p_person_id               => l_person_id
494     ,p_object_version_number   => l_povn
495     ,p_effective_start_date    => l_effective_start_Date
496     ,p_effective_end_date      => l_effective_end_Date
497     ,p_full_name               => l_full_name
498     ,p_comment_id              => l_comment_id
499     ,p_name_combination_warning=> l_name_combination_warning
500     ,p_orig_hire_warning       => l_orig_hire_warning
501     );
502 
503    prflvalue := fnd_profile.value('BEN_USER_TO_ORG_LINK');
504 
505    ben_assignment_api.create_ben_asg
506         (p_validate                      => p_validate  --in     boolean  default false
507          ,p_event_mode                   => false
508          --,p_effective_date               => trunc(sysdate)
509          ,p_effective_date               => hr_transaction_api.get_date_value
510                                            (p_transaction_step_id => p_transaction_step_id
511                                            ,p_name => 'P_DATE_START')
512          ,p_person_id                    => l_person_id
513          ,p_organization_id              => nvl(prflvalue,hr_transaction_api.get_number_value
514                                         (p_transaction_step_id => p_transaction_step_id
515                                          ,p_name => 'P_BUSINESS_GROUP_ID'))
516          ,p_assignment_status_type_id    => 1
517          ,p_assignment_id                => l_assignment_id  --   out number
518          ,p_object_version_number        => l_aovn ---   out nocopy number
519          ,p_effective_start_date         => l_asg_effective_start_date   --   out date
520          ,p_effective_end_date           => l_asg_effective_end_date    --   out date
521          ,p_assignment_extra_info_id     => l_assignment_extra_info_id
522          ,p_aei_object_version_number    => l_aei_object_version_number
523          );
524   end if;
525 -- end cobra codes
526 --
527    l_life_event_transaction_step := to_number(wf_engine.GetItemAttrText
528                     (itemtype   => l_item_type,
529                      itemkey    => l_item_key,
530                      aname      =>'LIFE_EVENT_TRANSACTION_STEP'));
531    if l_life_event_transaction_step is not null then
532       ben_create_ptnl_ler_ss.get_ptnl_ler_data_from_tt
533      (p_transaction_step_id             => l_life_event_transaction_step
534      ,p_csd_by_ptnl_ler_for_per_id   =>  l_ptnl_ler.csd_by_ptnl_ler_for_per_id   -- in  number    default null
535      ,p_lf_evt_ocrd_dt               =>  l_ler_lf_evt_ocrd_dt               -- in  out date
536      ,p_ptnl_ler_for_per_stat_cd     =>  l_ptnl_ler.ptnl_ler_for_per_stat_cd     -- in  varchar2  default null
537      ,p_ptnl_ler_for_per_src_cd      =>  l_ptnl_ler.ptnl_ler_for_per_src_cd      -- in  varchar2  default null
538      ,p_mnl_dt                       =>  l_ptnl_ler.mnl_dt                       -- in  date      default null
539      ,p_enrt_perd_id                 =>  l_ptnl_ler.enrt_perd_id                 -- in  number    default null
540      ,p_ler_id                       =>  l_ptnl_ler.ler_id                       -- in  number    default null
541      ,p_person_id                    =>  l_ptnl_ler.person_id                    -- in  number    default null
542      ,p_business_group_id            =>  l_ptnl_ler.business_group_id            -- in  number    default null
543      ,p_dtctd_dt                     =>  l_ptnl_ler.dtctd_dt                     -- in  date      default null
544      ,p_procd_dt                     =>  l_ptnl_ler.procd_dt                     -- in  date      default null
545      ,p_unprocd_dt                   =>  l_ptnl_ler.unprocd_dt                   -- in  date      default null
546      ,p_voidd_dt                     =>  l_ptnl_ler.voidd_dt                     -- in  date      default null
547      ,p_mnlo_dt                      =>  l_ptnl_ler.mnlo_dt                      -- in  date      default null
548      ,p_ntfn_dt                      =>  l_ptnl_ler.ntfn_dt                      -- in  date      default null
549      ,p_request_id                   =>  l_ptnl_ler.request_id                   -- in  number    default null
550      ,p_program_application_id       =>  l_ptnl_ler.program_application_id       -- in  number    default null
551      ,p_program_id                   =>  l_ptnl_ler.program_id                   -- in  number    default null
552      ,p_program_update_date          =>  l_ptnl_ler.program_update_date          -- in  date      default null
553      ,p_effective_date               => l_life_event_eff_date
554      ,p_flow_mode                    => l_flow_mode
555      ,p_subflow_mode                 => l_subflow_mode
556      ,p_life_event_name              => l_life_event_name
557      );
558 
559      --l_new_ler_lf_evt_ocrd_dt := to_char(l_ler_lf_evt_ocrd_dt,hr_transaction_ss.g_date_format);
560 
561      ben_ptnl_ler_for_per_api.create_ptnl_ler_for_per
562   (p_validate                     =>  false
563   ,p_ptnl_ler_for_per_id          =>  l_dummy_num                               -- out number
564   ,p_csd_by_ptnl_ler_for_per_id   =>  l_ptnl_ler.csd_by_ptnl_ler_for_per_id   -- in  number    default null
565   ,p_lf_evt_ocrd_dt               =>  l_ler_lf_evt_ocrd_dt               -- in  date      default null
566   ,p_ptnl_ler_for_per_stat_cd     =>  l_ptnl_ler.ptnl_ler_for_per_stat_cd     -- in  varchar2  default null
567   ,p_ptnl_ler_for_per_src_cd      =>  l_ptnl_ler.ptnl_ler_for_per_src_cd      -- in  varchar2  default null
568   ,p_mnl_dt                       =>  l_ptnl_ler.mnl_dt                       -- in  date      default null
569   ,p_enrt_perd_id                 =>  l_ptnl_ler.enrt_perd_id                 -- in  number    default null
570   ,p_ler_id                       =>  l_ptnl_ler.ler_id                       -- in  number    default null
571   ,p_person_id                    =>  l_person_id                    -- in  number    default null
572   ,p_business_group_id            =>  l_ptnl_ler.business_group_id            -- in  number    default null
573   ,p_dtctd_dt                     =>  l_ptnl_ler.dtctd_dt                     -- in  date      default null
574   ,p_procd_dt                     =>  l_ptnl_ler.procd_dt                     -- in  date      default null
575   ,p_unprocd_dt                   =>  l_ptnl_ler.unprocd_dt                   -- in  date      default null
576   ,p_voidd_dt                     =>  l_ptnl_ler.voidd_dt                     -- in  date      default null
577   ,p_mnlo_dt                      =>  l_ptnl_ler.mnlo_dt                      -- in  date      default null
578   ,p_ntfn_dt                      =>  l_ptnl_ler.ntfn_dt                      -- in  date      default null
579   ,p_request_id                   =>  l_ptnl_ler.request_id                   -- in  number    default null
580   ,p_program_application_id       =>  l_ptnl_ler.program_application_id       -- in  number    default null
581   ,p_program_id                   =>  l_ptnl_ler.program_id                   -- in  number    default null
582   ,p_program_update_date          =>  l_ptnl_ler.program_update_date          -- in  date      default null
583   ,p_object_version_number        =>  l_life_event_ovn                                     -- out number
584   ,p_effective_date               =>  l_life_event_eff_date               --in  date
585   );
586 
587      /*ben_create_ptnl_ler_ss.create_ptnl_ler_for_per
588      (p_validate                     =>  'N'
589      ,p_ptnl_ler_for_per_id          =>  l_ptnl_ler_for_per_id          -- out number
590      ,p_csd_by_ptnl_ler_for_per_id   =>  to_char(l_ptnl_ler.csd_by_ptnl_ler_for_per_id)   -- in  number    default null
591      ,p_lf_evt_ocrd_dt               =>  l_new_ler_lf_evt_ocrd_dt               -- in  out date
592      ,p_ptnl_ler_for_per_stat_cd     =>  l_ptnl_ler.ptnl_ler_for_per_stat_cd     -- in  varchar2  default null
593      ,p_ptnl_ler_for_per_src_cd      =>  l_ptnl_ler.ptnl_ler_for_per_src_cd      -- in  varchar2  default null
594      ,p_mnl_dt                       =>  to_char(l_ptnl_ler.mnl_dt,hr_transaction_ss.g_date_format)                       -- in  date      default null
595      ,p_enrt_perd_id                 =>  to_char(l_ptnl_ler.enrt_perd_id)                 -- in  number    default null
596      ,p_ler_id                       =>  to_char(l_ptnl_ler.ler_id)                       -- in  number    default null
597      ,p_person_id                    =>  to_char(l_person_id)                    -- in  number    default null
598      ,p_business_group_id            =>  to_char(l_ptnl_ler.business_group_id)            -- in  number    default null
599      ,p_dtctd_dt                     =>  to_char(l_ptnl_ler.dtctd_dt,hr_transaction_ss.g_date_format)                     -- in  date      default null
600      ,p_procd_dt                     =>  to_char(l_ptnl_ler.procd_dt,hr_transaction_ss.g_date_format)                     -- in  date      default null
601      ,p_unprocd_dt                   =>  to_char(l_ptnl_ler.unprocd_dt,hr_transaction_ss.g_date_format)                   -- in  date      default null
602      ,p_voidd_dt                     =>  to_char(l_ptnl_ler.voidd_dt,hr_transaction_ss.g_date_format)                     -- in  date      default null
603      ,p_mnlo_dt                      =>  to_char(l_ptnl_ler.mnlo_dt,hr_transaction_ss.g_date_format)                      -- in  date      default null
604      ,p_ntfn_dt                      =>  to_char(l_ptnl_ler.ntfn_dt,hr_transaction_ss.g_date_format)                      -- in  date      default null
605      ,p_request_id                   =>  to_char(l_ptnl_ler.request_id)                   -- in  number    default null
606      ,p_program_application_id       =>  to_char(l_ptnl_ler.program_application_id)       -- in  number    default null
607      ,p_program_id                   =>  to_char(l_ptnl_ler.program_id)                   -- in  number    default null
608      ,p_program_update_date          =>  to_char(l_ptnl_ler.program_update_date,hr_transaction_ss.g_date_format)          -- in  date      default null
609      ,p_object_version_number        =>  l_life_event_ovn                        -- out number
610      ,p_effective_date               =>  to_char(l_life_event_eff_date,hr_transaction_ss.g_date_format)                   --in  date
611      ,p_item_type                    =>  l_item_type
612      ,p_item_key                     =>  l_item_key
613      ,p_activity_id                  =>  null
614      ,p_flow_mode                    =>  l_flow_mode
615      ,p_subflow_mode                 =>  l_subflow_mode
616      ,p_life_event_name              =>  l_life_event_name
617      ,p_transaction_step_id          =>  l_evt_transaction_step_id
618      ,p_error_message                =>  l_error_message
619      ,p_hire_dt                      =>  null
620      );*/
621    end if;
622 --
623    l_transaction_step := to_number(wf_engine.GetItemAttrText
624                     (itemtype   => l_item_type,
625                      itemkey    => l_item_key,
626                      aname      =>'USER_TRANSACTION_STEP'));
627    if l_transaction_step is not null then
628       ben_process_user_ss_api.get_user_data_from_tt(
629            p_transaction_step_id          => l_transaction_step
630           ,p_user_name                    => l_user_name
631           ,p_user_pswd                    => l_user_pswd
632           ,p_pswd_hint                    => l_pswd_hint
633           ,p_owner                        => l_owner
634           ,p_session_number               => l_session_number
635           ,p_start_date                   => l_start_date
636           ,p_end_date                     => l_end_date
637           ,p_last_logon_date              => l_last_logon_date
638           ,p_password_date                => l_password_date
639           ,p_password_accesses_left       => l_password_accesses_left
640           ,p_password_lifespan_accesses   => l_password_lifespan_accesses
641           ,p_password_lifespan_days       => l_password_lifespan_days
642           ,p_employee_id                  => l_employee_id
643           ,p_email_address                => l_email_address
644           ,p_fax                          => l_fax
645           ,p_customer_id                  => l_customer_id
646           ,p_supplier_id                  => l_supplier_id
647           ,p_business_group_id            => l_business_group_id
648           ,p_respons_id                   => l_respons_id
649           ,p_respons_appl_id              => l_respons_appl_id
650           );
651 
652       l_user_pswd := wf_engine.GetItemAttrText
653                     (itemtype   => l_item_type,
654                      itemkey    => l_item_key,
655                      aname      =>'USER_ACCOUNT_INFO');
656 
657       wf_engine.SetItemAttrText (itemtype => l_item_type,
658                            itemkey  => l_item_key,
659                            aname    => 'USER_ACCOUNT_INFO',
660                            avalue   => null);
661       ben_process_user_ss_api.create_user_details(
662            p_validate                     => false
663           ,p_user_name                    => l_user_name
664           ,p_owner                        => l_owner
665           ,p_unencrypted_password         => trim(l_user_pswd)
666           ,p_session_number               => l_session_number
667           ,p_start_date                   => l_start_date
668           ,p_end_date                     => l_end_date
669           ,p_last_logon_date              => l_last_logon_date
670           ,p_description                  => l_pswd_hint
671           ,p_password_date                => l_password_date
672           ,p_password_accesses_left       => l_password_accesses_left
673           ,p_password_lifespan_accesses   => l_password_lifespan_accesses
674           ,p_password_lifespan_days       => l_password_lifespan_days
675           ,p_employee_id                  => l_person_id
676           ,p_email_address                => l_email_address
677           ,p_fax                          => l_fax
678           ,p_customer_id                  => l_customer_id
679           ,p_supplier_id                  => l_supplier_id
680           ,p_business_group_id            => l_business_group_id
681           ,p_responsibility_id            => l_respons_id
682           ,p_respons_application_id       => l_respons_appl_id
683           ,p_api_error                    => l_api_error
684           ,p_user_id                      => l_user_id
685           );
686 
687    end if;
688    hr_process_person_ss.g_session_id := ICX_SEC.G_SESSION_ID;
689    hr_process_person_ss.g_person_id := l_person_id;
690    hr_process_person_ss.g_assignment_id := l_assignment_id;
691 --   hr_utility.set_location('g_person_id =' || hr_process_person_ss.g_person_id, 8888);
692 
693 --
694 --
695    if l_assign_payroll_warning then
696      -- ------------------------------------------------------------+
697      -- The assign payroll warning has been set so we must set the
698      -- error so we can retrieve the text using fnd_message.get
699      -- -------------------------------------------------------------+
700      null;
701   end if;
702 --
703 --
704    if p_validate = true then
705      rollback to process_basic_details;
706   end if;
707 --
708 --
709 EXCEPTION
710   when hr_utility.hr_error then
711     -- -----------------------------------------------------------------+
712     -- An application error has been raised by the API so we must set
713     -- the error.
714     -- -----------------------------------------------------------------+
715         rollback to process_basic_details;
716         raise;
717 
718 END process_api;
719 --
720 ------------------------------------------------------------------------+
721 -------------------------Create_Person----------------------------------+
722 ------------------------------------------------------------------------+
723 procedure create_person
724   (p_item_type                     in varchar2
725   ,p_item_key                      in varchar2
726   ,p_actid                         in number
727   ,p_login_person_id               in number
728   ,p_process_section_name          in varchar2
729   ,p_action_type                   in varchar2
730   ,p_validate                      in varchar2 default 'Y'  --boolean default  false
731 --  ,p_hire_date                     in     date
732   ,p_hire_date                     in     varchar2
733   ,p_business_group_id             in     number
734   ,p_last_name                     in     varchar2
735   ,p_sex                           in     varchar2
736   ,p_review_page_region_code       in varchar2 default hr_api.g_varchar2
737   ,p_person_type_id                in     number   default null
738   ,p_per_comments                  in     varchar2 default null
739   ,p_date_employee_data_verified   in     date     default null
740   ,p_date_of_birth                 in     date     default null
741   ,p_email_address                 in     varchar2 default null
742   ,p_employee_number               in out nocopy varchar2
743   ,p_expense_check_send_to_addres  in     varchar2 default null
744   ,p_first_name                    in     varchar2 default null
745   ,p_known_as                      in     varchar2 default null
746   ,p_marital_status                in     varchar2 default null
747   ,p_middle_names                  in     varchar2 default null
748   ,p_nationality                   in     varchar2 default null
749   ,p_national_identifier           in     varchar2 default null
750   ,p_previous_last_name            in     varchar2 default null
751   ,p_registered_disabled_flag      in     varchar2 default null
752   ,p_title                         in     varchar2 default null
753   ,p_vendor_id                     in     number   default null
754   ,p_work_telephone                in     varchar2 default null
755   ,p_attribute_category            in     varchar2 default null
756   ,p_attribute1                    in     varchar2 default null
757   ,p_attribute2                    in     varchar2 default null
758   ,p_attribute3                    in     varchar2 default null
759   ,p_attribute4                    in     varchar2 default null
760   ,p_attribute5                    in     varchar2 default null
761   ,p_attribute6                    in     varchar2 default null
762   ,p_attribute7                    in     varchar2 default null
763   ,p_attribute8                    in     varchar2 default null
764   ,p_attribute9                    in     varchar2 default null
765   ,p_attribute10                   in     varchar2 default null
766   ,p_attribute11                   in     varchar2 default null
767   ,p_attribute12                   in     varchar2 default null
768   ,p_attribute13                   in     varchar2 default null
769   ,p_attribute14                   in     varchar2 default null
770   ,p_attribute15                   in     varchar2 default null
771   ,p_attribute16                   in     varchar2 default null
772   ,p_attribute17                   in     varchar2 default null
773   ,p_attribute18                   in     varchar2 default null
774   ,p_attribute19                   in     varchar2 default null
775   ,p_attribute20                   in     varchar2 default null
776   ,p_attribute21                   in     varchar2 default null
777   ,p_attribute22                   in     varchar2 default null
778   ,p_attribute23                   in     varchar2 default null
779   ,p_attribute24                   in     varchar2 default null
780   ,p_attribute25                   in     varchar2 default null
781   ,p_attribute26                   in     varchar2 default null
782   ,p_attribute27                   in     varchar2 default null
783   ,p_attribute28                   in     varchar2 default null
784   ,p_attribute29                   in     varchar2 default null
785   ,p_attribute30                   in     varchar2 default null
786   ,p_per_information_category      in     varchar2 default null
787   ,p_per_information1              in     varchar2 default null
788   ,p_per_information2              in     varchar2 default null
789   ,p_per_information3              in     varchar2 default null
790   ,p_per_information4              in     varchar2 default null
791   ,p_per_information5              in     varchar2 default null
792   ,p_per_information6              in     varchar2 default null
793   ,p_per_information7              in     varchar2 default null
794   ,p_per_information8              in     varchar2 default null
795   ,p_per_information9              in     varchar2 default null
796   ,p_per_information10             in     varchar2 default null
797   ,p_per_information11             in     varchar2 default null
798   ,p_per_information12             in     varchar2 default null
799   ,p_per_information13             in     varchar2 default null
800   ,p_per_information14             in     varchar2 default null
801   ,p_per_information15             in     varchar2 default null
802   ,p_per_information16             in     varchar2 default null
803   ,p_per_information17             in     varchar2 default null
804   ,p_per_information18             in     varchar2 default null
805   ,p_per_information19             in     varchar2 default null
806   ,p_per_information20             in     varchar2 default null
807   ,p_per_information21             in     varchar2 default null
808   ,p_per_information22             in     varchar2 default null
809   ,p_per_information23             in     varchar2 default null
810   ,p_per_information24             in     varchar2 default null
811   ,p_per_information25             in     varchar2 default null
812   ,p_per_information26             in     varchar2 default null
813   ,p_per_information27             in     varchar2 default null
814   ,p_per_information28             in     varchar2 default null
815   ,p_per_information29             in     varchar2 default null
816   ,p_per_information30             in     varchar2 default null
817   ,p_date_of_death                 in     date     default null
818   ,p_background_check_status       in     varchar2 default null
819   ,p_background_date_check         in     date     default null
820   ,p_blood_type                    in     varchar2 default null
821   ,p_correspondence_language       in     varchar2 default null
822   ,p_fast_path_employee            in     varchar2 default null
823   ,p_fte_capacity                  in     number   default null
824   ,p_honors                        in     varchar2 default null
825   ,p_internal_location             in     varchar2 default null
826   ,p_last_medical_test_by          in     varchar2 default null
827   ,p_last_medical_test_date        in     date     default null
828   ,p_mailstop                      in     varchar2 default null
829   ,p_office_number                 in     varchar2 default null
830   ,p_on_military_service           in     varchar2 default null
831   ,p_pre_name_adjunct              in     varchar2 default null
832   ,p_projected_start_date          in     date     default null
833   ,p_resume_exists                 in     varchar2 default null
834   ,p_resume_last_updated           in     date     default null
835   ,p_second_passport_exists        in     varchar2 default null
836   ,p_student_status                in     varchar2 default null
837   ,p_work_schedule                 in     varchar2 default null
838   ,p_suffix                        in     varchar2 default null
839   ,p_benefit_group_id              in     number   default null
840   ,p_receipt_of_death_cert_date    in     date     default null
841   ,p_coord_ben_med_pln_no          in     varchar2 default null
842   ,p_coord_ben_no_cvg_flag         in     varchar2 default 'N'
843   ,p_uses_tobacco_flag             in     varchar2 default null
844   ,p_dpdnt_adoption_date           in     date     default null
845   ,p_dpdnt_vlntry_svce_flag        in     varchar2 default 'N'
846   ,p_original_date_of_hire         in     date     default null
847   ,p_adjusted_svc_date             in     date     default null
848   ,p_town_of_birth                in      varchar2 default null
849   ,p_region_of_birth              in      varchar2 default null
850   ,p_country_of_birth             in      varchar2 default null
851   ,p_global_person_id             in      varchar2 default null
852   ,p_effective_date               in      date default sysdate
853   ,p_attribute_update_mode        in      varchar2 default null
854   ,p_object_version_number        in      number default null
855   ,p_applicant_number             in      varchar2 default null
856   ,p_comments                     in      varchar2 default null
857   ,p_rehire_authorizor            in      varchar2 default null
858   ,p_rehire_recommendation        in      varchar2 default null
859   ,p_hold_applicant_date_until    in      date     default null
860   ,p_rehire_reason                in      varchar2 default null
861   ,p_flow_name                    in      varchar2 default null
862   ,p_person_id                        out nocopy number
863   ,p_assignment_id                    out nocopy number
864   ,p_per_object_version_number        out nocopy number
865   ,p_asg_object_version_number        out nocopy number
866   ,p_per_effective_start_date         out nocopy date
867   ,p_per_effective_end_date           out nocopy date
868   ,p_full_name                        out nocopy varchar2
869   ,p_per_comment_id                   out nocopy number
870   ,p_assignment_sequence              out nocopy number
871   ,p_assignment_number                out nocopy varchar2
872   ,p_name_combination_warning         out nocopy varchar2    ---boolean
873   ,p_assign_payroll_warning           out nocopy varchar2    ---boolean
874   ,p_orig_hire_warning                out nocopy varchar2    ---boolean
875   ,p_return_status                    out nocopy varchar2    -- Bug 2149113
876   ) IS
877 
878   CURSOR  get_wf_actid (c_activity_name  in varchar2) IS
879   SELECT  distinct wfias.activity_id
880   FROM    wf_item_activity_statuses_v  wfias
881   WHERE   wfias.item_type = p_item_type
882   and     wfias.item_key  = p_item_key
883   and     wfias.activity_name = c_activity_name;
884 
885 ------+
886   l_transaction_id             number default null;
887   l_transaction_step_id        number default null;
888   l_trans_obj_vers_num         number default null;
889   l_count                      integer default 0;
890   l_transaction_table hr_transaction_ss.transaction_table;
891   l_review_item_name  varchar2(50);
892   --
893   l_full_name_duplicate_flag      varchar2(1) default null;
894   l_result                  varchar2(50);
895   l_per_ovn                           number default null;
896   l_employee_number                   number default null;
897   l_asg_ovn                           number default null;
898   l_full_name                     per_all_people_f.full_name%type default null;
899   l_person_id                    number;
900   l_assignment_id                number;
901   l_per_effective_start_date    date;
902   l_asg_effective_end_date      date;
903   l_asg_effective_start_date    date;
904   l_per_effective_end_date      date;
905   l_hire_date                   date;
906   l_per_comment_id                number;
907   l_assignment_sequence           number;
908   l_assignment_number             varchar2(50);
909   l_name_combination_warning      boolean;
910   l_assign_payroll_warning        boolean;
911   l_orig_hire_warning             boolean;
912   l_parent_id         number;
913   l_dummy_num  number;
914   l_dummy_date date;
915   l_dummy_char varchar2(1000);
916   l_dummy_bool boolean;
917   l_validate boolean;
918   l_vendor_id                     number default null;
919   l_benefit_group_id              number default null;
920   l_fte_capacity                  number default null;
921   l_person_type_id                number default null;
922   -- start cobra codes
923   l_assignment_extra_info_id      number;
924   l_aei_object_version_number     number;
925   prflvalue                          varchar2(2000) default null;
926 --
927 Begin
928 
929     SAVEPOINT create_cobra_person;
930     --Bug 2149113
931     fnd_msg_pub.initialize;
932     p_return_status := 'Y';
933     --End
934     --
935 
936    if p_validate = 'N' OR p_validate is null
937    then
938       l_validate := false;
939    else
940       l_validate := true;
941    end if;
942 ---------+
943 -- Java caller will set p_vendor_id, p_benefit_group_id and p_fte_capacity to
944 -- hr_api.g_number value.  We need to set these back to null before saving to
945 -- transaction table.
946 
947    if p_vendor_id = 0
948    then
949       l_vendor_id := null;
950    else
951       l_vendor_id := p_vendor_id;
952    end if;
953 --
954    if p_benefit_group_id = 0
955    then
956       l_benefit_group_id := null;
957    else
958       l_benefit_group_id := p_benefit_group_id;
959    end if;
960 --
961    if p_fte_capacity = 0
962    then
963       l_fte_capacity := null;
964    else
965       l_fte_capacity := p_fte_capacity;
966    end if;
967  --
968    if p_person_type_id = 0
969    then
970       l_person_type_id := null;
971    else
972       l_person_type_id := p_person_type_id;
973    end if;
974 
975  -- start cobra codes
976  if p_flow_name = 'Cobra' then
977    if (to_date(p_hire_date,hr_transaction_ss.g_date_format) > p_effective_date) then
978        l_hire_date := p_effective_date;
979    else
980        l_hire_date := to_date(p_hire_date,hr_transaction_ss.g_date_format);
981    end if;
982    hr_contact_api.create_person
983         (p_validate                      => false  --in     boolean  default false
984         ,p_start_date                    => l_hire_date
985         ,p_business_group_id             => p_business_group_id
986         ,p_last_name                     => p_last_name
987         ,p_sex                           => p_sex
988         ,p_person_type_id                => null
989         ,p_comments                      => p_per_comments
990         ,p_date_employee_data_verified   => p_date_employee_data_verified
991         ,p_date_of_birth                 => p_date_of_birth
992         ,p_email_address                 => p_email_address
993         ,p_expense_check_send_to_addres  => p_expense_check_send_to_addres
994         ,p_first_name                    => p_first_name
995         ,p_known_as                      => p_known_as
996         ,p_marital_status                => p_marital_status
997         ,p_middle_names                  => p_middle_names
998         ,p_nationality                   => p_nationality
999         ,p_national_identifier           => p_national_identifier
1000         ,p_previous_last_name            => p_previous_last_name
1001         ,p_registered_disabled_flag      => p_registered_disabled_flag
1002         ,p_title                         => p_title
1003         ,p_vendor_id                     => l_vendor_id
1004         ,p_work_telephone                => p_work_telephone
1005         ,p_attribute_category            => p_attribute_category
1006         ,p_attribute1                   => p_attribute1
1007         ,p_attribute2                   => p_attribute2
1008         ,p_attribute3                   => p_attribute3
1009         ,p_attribute4                   => p_attribute4
1010         ,p_attribute5                   => p_attribute5
1011         ,p_attribute6                   => p_attribute6
1012         ,p_attribute7                   => p_attribute7
1013         ,p_attribute8                   => p_attribute8
1014         ,p_attribute9                   => p_attribute9
1015         ,p_attribute10                  => p_attribute10
1016         ,p_attribute11                  => p_attribute11
1017         ,p_attribute12                  => p_attribute12
1018         ,p_attribute13                  => p_attribute13
1019         ,p_attribute14                  => p_attribute14
1020         ,p_attribute15                  => p_attribute15
1021         ,p_attribute16                  => p_attribute16
1022         ,p_attribute17                  => p_attribute17
1023         ,p_attribute18                  => p_attribute18
1024         ,p_attribute19                  => p_attribute19
1025         ,p_attribute20                  => p_attribute20
1026         ,p_attribute21                  => p_attribute21
1027         ,p_attribute22                  => p_attribute22
1028         ,p_attribute23                  => p_attribute23
1029         ,p_attribute24                  => p_attribute24
1030         ,p_attribute25                  => p_attribute25
1031         ,p_attribute26                  => p_attribute26
1032         ,p_attribute27                  => p_attribute27
1033         ,p_attribute28                  => p_attribute28
1034         ,p_attribute29                  => p_attribute29
1035         ,p_attribute30                  => p_attribute30
1036         ,p_per_information_category      => p_per_information_category
1037         ,p_per_information1              => p_per_information1
1038         ,p_per_information2              => p_per_information2
1039         ,p_per_information3              => p_per_information3
1040         ,p_per_information4              => p_per_information4
1041         ,p_per_information5              => p_per_information5
1042         ,p_per_information6              => p_per_information6
1043         ,p_per_information7              => p_per_information7
1044         ,p_per_information8              => p_per_information8
1045         ,p_per_information9              => p_per_information9
1046         ,p_per_information10             => p_per_information10
1047         ,p_per_information11             => p_per_information11
1048         ,p_per_information12             => p_per_information12
1049         ,p_per_information13             => p_per_information13
1050         ,p_per_information14             => p_per_information14
1051         ,p_per_information15             => p_per_information15
1052         ,p_per_information16             => p_per_information16
1053         ,p_per_information17             => p_per_information17
1054         ,p_per_information18             => p_per_information18
1055         ,p_per_information19             => p_per_information19
1056         ,p_per_information20             => p_per_information20
1057         ,p_per_information21             => p_per_information21
1058         ,p_per_information22             => p_per_information22
1059         ,p_per_information23             => p_per_information23
1060         ,p_per_information24             => p_per_information24
1061         ,p_per_information25             => p_per_information25
1062         ,p_per_information26             => p_per_information26
1063         ,p_per_information27             => p_per_information27
1064         ,p_per_information28             => p_per_information28
1065         ,p_per_information29             => p_per_information29
1066         ,p_per_information30             => p_per_information30
1067         ,p_correspondence_language       => p_correspondence_language
1068         ,p_honors                        => p_honors
1069         ,p_pre_name_adjunct              => p_pre_name_adjunct
1070         ,p_suffix                        => p_suffix
1071         ,p_town_of_birth                 => p_town_of_birth
1072         ,p_region_of_birth               => p_region_of_birth
1073         ,p_country_of_birth              => p_country_of_birth
1074         ,p_global_person_id              => p_global_person_id
1075         ,p_person_id                     => l_person_id  --   out number
1076         ,p_object_version_number         => l_per_ovn ---   out nocopy number
1077         ,p_effective_start_date          => l_per_effective_start_date   --   out date
1078         ,p_effective_end_date            => l_per_effective_end_date    --   out date
1079         ,p_full_name                     => l_full_name   ---   out nocopy varchar2
1080         ,p_comment_id                    => l_per_comment_id     ---   out nocopy number
1081         ,p_name_combination_warning      => l_name_combination_warning   --   out boolean
1082         ,p_orig_hire_warning             => l_orig_hire_warning  --  out boolean
1083    );
1084   --
1085     hr_utility.set_location('Leaving  ben_process_cobra_person_ss.create_personnnnnnnnnn ' || l_person_id, 2006);
1086     prflvalue := fnd_profile.value('BEN_USER_TO_ORG_LINK');
1087     ben_assignment_api.create_ben_asg
1088         (p_validate                      => l_validate  --in     boolean  default false
1089          ,p_event_mode                   => false
1090          ,p_effective_date               => l_hire_date
1091         -- ,p_effective_date               => trunc(sysdate)
1092          ,p_person_id                    => l_person_id
1093          ,p_organization_id              => nvl(prflvalue,p_business_group_id) --new profile??
1094          ,p_assignment_status_type_id    => 1
1095          ,p_assignment_id                => l_assignment_id  --   out number
1096          ,p_object_version_number        => l_asg_ovn ---   out nocopy number
1097          ,p_effective_start_date         => l_asg_effective_start_date   --   out date
1098          ,p_effective_end_date           => l_asg_effective_end_date    --   out date
1099          ,p_assignment_extra_info_id     => l_assignment_extra_info_id
1100          ,p_aei_object_version_number    => l_aei_object_version_number
1101          );
1102 
1103   end if;
1104 
1105   rollback to create_cobra_person;
1106   --
1107   -- First, check if transaction id exists or not
1108   --
1109   l_transaction_id := hr_transaction_ss.get_transaction_id
1110                      (p_item_type   => p_item_type
1111                      ,p_item_key    => p_item_key);
1112   --
1113   if l_transaction_id is null then
1114      -- Start a Transaction
1115         hr_transaction_ss.start_transaction
1116            (itemtype   => p_item_type
1117            ,itemkey    => p_item_key
1118            ,actid      => p_actid
1119            ,funmode    => 'RUN'
1120            ,p_login_person_id => p_login_person_id  --nvl(p_login_person_id, p_parent_id)
1121            ,result     => l_result);
1122 
1123         l_transaction_id := hr_transaction_ss.get_transaction_id
1124                         (p_item_type   => p_item_type
1125                         ,p_item_key    => p_item_key);
1126   end if;
1127 ------------------+
1128   --
1129   -- First check step id already exists, which happens when user navigates
1130   -- back from review or page after this page.
1131   --
1132   hr_transaction_api.get_transaction_step_info
1133                 (p_item_type             => p_item_type
1134                 ,p_item_key              => p_item_key
1135                 ,p_activity_id           => p_actid
1136                 ,p_transaction_step_id   => l_transaction_step_id
1137                 ,p_object_version_number => l_trans_obj_vers_num);
1138   --
1139   if l_transaction_step_id is null then
1140      --
1141      -- Create a transaction step
1142      --
1143      hr_transaction_api.create_transaction_step
1144      (p_validate              => false
1145      ,p_creator_person_id     => p_login_person_id  --nvl(p_login_person_id, p_parent_id)
1146      ,p_transaction_id        => l_transaction_id
1147      ,p_api_name              => g_package || 'PROCESS_API'
1148      ,p_item_type             => p_item_type
1149      ,p_item_key              => p_item_key
1150      ,p_activity_id           => p_actid
1151      ,p_transaction_step_id   => l_transaction_step_id
1152      ,p_object_version_number => l_trans_obj_vers_num);
1153      --
1154   end if;
1155   --
1156 
1157   --
1158   -- Create a transaction step
1159   --
1160   --
1161   l_count := 1;
1162   l_transaction_table(l_count).param_name := 'P_ITEM_TYPE';
1163   l_transaction_table(l_count).param_value := p_item_type;
1164   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1165   --
1166   l_count := l_count + 1;
1167   l_transaction_table(l_count).param_name := 'P_ITEM_KEY';
1168   l_transaction_table(l_count).param_value := p_item_key;
1169   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1170   --
1171   l_count := l_count + 1;
1172   l_transaction_table(l_count).param_name := 'P_ACTIVITY_ID';
1173   l_transaction_table(l_count).param_value := p_actid;
1174   l_transaction_table(l_count).param_data_type := 'NUMBER';
1175 --
1176   l_count := l_count + 1;
1177   l_transaction_table(l_count).param_name := 'P_PROCESS_SECTION_NAME';
1178   l_transaction_table(l_count).param_value := p_process_section_name;
1179   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1180 --
1181   l_count := l_count + 1;
1182   l_transaction_table(l_count).param_name := 'P_ACTION_TYPE';
1183   l_transaction_table(l_count).param_value := p_action_type;
1184   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1185 --
1186   l_count := l_count + 1;
1187   l_transaction_table(l_count).param_name := 'P_DATE_START';
1188   l_transaction_table(l_count).param_value := to_char(l_hire_date,hr_transaction_ss.g_date_format);
1189   l_transaction_table(l_count).param_data_type := 'DATE';
1190 --
1191 -- We don't want to derive the business_group_id because we want to save a
1192 -- db sql statement call to improve the performance.
1193   l_count := l_count + 1;
1194   l_transaction_table(l_count).param_name := 'P_BUSINESS_GROUP_ID';
1195   l_transaction_table(l_count).param_value := p_business_group_id;
1196   l_transaction_table(l_count).param_data_type := 'NUMBER';
1197 --
1198   l_count := l_count + 1;
1199   l_transaction_table(l_count).param_name := 'P_LAST_NAME';
1200   l_transaction_table(l_count).param_value := p_last_name;
1201   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1202 --
1203   l_count := l_count + 1;
1204   l_transaction_table(l_count).param_name := 'P_SEX';
1205   l_transaction_table(l_count).param_value := p_sex;
1206   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1207 --
1208   l_count := l_count + 1;
1209   l_transaction_table(l_count).param_name := 'P_PERSON_TYPE_ID';
1210   l_transaction_table(l_count).param_value := l_person_type_id;
1211   l_transaction_table(l_count).param_data_type := 'NUMBER';
1212 --
1213   l_count := l_count + 1;
1214   l_transaction_table(l_count).param_name := 'P_PER_COMMENTS';
1215   l_transaction_table(l_count).param_value := p_per_comments;
1216   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1217 --
1218   l_count := l_count + 1;
1219   l_transaction_table(l_count).param_name := 'P_DATE_EMPLOYEE_DATA_VERIFIED';
1220   l_transaction_table(l_count).param_value := to_char(p_date_employee_data_verified,
1221                                               hr_transaction_ss.g_date_format);
1222   l_transaction_table(l_count).param_data_type := 'DATE';
1223 --
1224   l_count := l_count + 1;
1225   l_transaction_table(l_count).param_name := 'P_DATE_OF_BIRTH';
1226   l_transaction_table(l_count).param_value := to_char(p_date_of_birth,
1227                                               hr_transaction_ss.g_date_format);
1228   l_transaction_table(l_count).param_data_type := 'DATE';
1229 --
1230   l_count := l_count + 1;
1231   l_transaction_table(l_count).param_name := 'P_EMAIL_ADDRESS';
1232   l_transaction_table(l_count).param_value := p_email_address;
1233   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1234 --
1235   l_count := l_count + 1;
1236   l_transaction_table(l_count).param_name := 'P_EXPENSE_CHECK_SEND_TO_ADDRES';
1237   l_transaction_table(l_count).param_value := p_expense_check_send_to_addres;
1238   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1239 --
1240   l_count := l_count + 1;
1241   l_transaction_table(l_count).param_name := 'P_FIRST_NAME';
1242   l_transaction_table(l_count).param_value := p_first_name;
1243   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1244 --
1245   l_count := l_count + 1;
1246   l_transaction_table(l_count).param_name := 'P_KNOWN_AS';
1247   l_transaction_table(l_count).param_value := p_known_as;
1248   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1249 --
1250   l_count := l_count + 1;
1251   l_transaction_table(l_count).param_name := 'P_MARITAL_STATUS';
1252   l_transaction_table(l_count).param_value := p_marital_status;
1253   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1254 --
1255   l_count := l_count + 1;
1256   l_transaction_table(l_count).param_name := 'P_MIDDLE_NAMES';
1257   l_transaction_table(l_count).param_value := p_middle_names;
1258   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1259 --
1260   l_count := l_count + 1;
1261   l_transaction_table(l_count).param_name := 'P_NATIONALITY';
1262   l_transaction_table(l_count).param_value := p_nationality;
1263   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1264 --
1265 --
1266   l_count := l_count + 1;
1267   l_transaction_table(l_count).param_name := 'P_NATIONAL_IDENTIFIER';
1268   l_transaction_table(l_count).param_value := p_national_identifier;
1269   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1270 --
1271   l_count := l_count + 1;
1272   l_transaction_table(l_count).param_name := 'P_PREVIOUS_LAST_NAME';
1273   l_transaction_table(l_count).param_value := p_previous_last_name;
1274   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1275 --
1276   l_count := l_count + 1;
1277   l_transaction_table(l_count).param_name := 'P_REGISTERED_DISABLED_FLAG';
1278   l_transaction_table(l_count).param_value := p_registered_disabled_flag;
1279   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1280 --
1281   l_count := l_count + 1;
1282   l_transaction_table(l_count).param_name := 'P_TITLE';
1283   l_transaction_table(l_count).param_value := p_title;
1284   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1285 --
1286   l_count := l_count + 1;
1287   l_transaction_table(l_count).param_name := 'P_VENDOR_ID';
1288   l_transaction_table(l_count).param_value := to_char(l_vendor_id);
1289   l_transaction_table(l_count).param_data_type := 'NUMBER';
1290 --
1291   l_count := l_count + 1;
1292   l_transaction_table(l_count).param_name := 'P_WORK_TELEPHONE';
1293   l_transaction_table(l_count).param_value := p_work_telephone;
1294   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1295 --
1296   l_count := l_count + 1;
1297   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE_CATEGORY';
1298   l_transaction_table(l_count).param_value := p_attribute_category;
1299   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1300 --
1301   l_count := l_count + 1;
1302   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE1';
1303   l_transaction_table(l_count).param_value := p_attribute1;
1304   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1305 --
1306   l_count := l_count + 1;
1307   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE2';
1308   l_transaction_table(l_count).param_value := p_attribute2;
1309   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1310 --
1311   l_count := l_count + 1;
1312   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE3';
1313   l_transaction_table(l_count).param_value := p_attribute3;
1314   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1315 --
1316   l_count := l_count + 1;
1317   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE4';
1318   l_transaction_table(l_count).param_value := p_attribute4;
1319   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1320 --
1321   l_count := l_count + 1;
1322   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE5';
1323   l_transaction_table(l_count).param_value := p_attribute5;
1324   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1325 --
1326   l_count := l_count + 1;
1327   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE6';
1328   l_transaction_table(l_count).param_value := p_attribute6;
1329   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1330 --
1331   l_count := l_count + 1;
1332   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE7';
1333   l_transaction_table(l_count).param_value := p_attribute7;
1334   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1335 --
1336   l_count := l_count + 1;
1337   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE8';
1338   l_transaction_table(l_count).param_value := p_attribute8;
1339   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1340 --
1341   l_count := l_count + 1;
1342   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE9';
1343   l_transaction_table(l_count).param_value := p_attribute9;
1344   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1345 --
1346   l_count := l_count + 1;
1347   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE10';
1348   l_transaction_table(l_count).param_value := p_attribute10;
1349   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1350 --
1351   l_count := l_count + 1;
1352   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE11';
1353   l_transaction_table(l_count).param_value := p_attribute11;
1354   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1355 --
1356   l_count := l_count + 1;
1357   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE12';
1358   l_transaction_table(l_count).param_value := p_attribute12;
1359   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1360 --
1361   l_count := l_count + 1;
1362   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE13';
1363   l_transaction_table(l_count).param_value := p_attribute13;
1364   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1365 --
1366   l_count := l_count + 1;
1367   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE14';
1368   l_transaction_table(l_count).param_value := p_attribute14;
1369   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1370 --
1371   l_count := l_count + 1;
1372   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE15';
1373   l_transaction_table(l_count).param_value := p_attribute15;
1374   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1375 --
1376   l_count := l_count + 1;
1377   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE16';
1378   l_transaction_table(l_count).param_value := p_attribute16;
1379   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1380 --
1381   l_count := l_count + 1;
1382   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE17';
1383   l_transaction_table(l_count).param_value := p_attribute17;
1384   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1385 --
1386   l_count := l_count + 1;
1387   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE18';
1388   l_transaction_table(l_count).param_value := p_attribute18;
1389   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1390 --
1391   l_count := l_count + 1;
1392   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE19';
1393   l_transaction_table(l_count).param_value := p_attribute19;
1394   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1395 --
1396   l_count := l_count + 1;
1397   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE20';
1398   l_transaction_table(l_count).param_value := p_attribute20;
1399   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1400 --
1401   l_count := l_count + 1;
1402   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE21';
1403   l_transaction_table(l_count).param_value := p_attribute21;
1404   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1405 --
1406   l_count := l_count + 1;
1407   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE22';
1408   l_transaction_table(l_count).param_value := p_attribute22;
1409   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1410 --
1411   l_count := l_count + 1;
1412   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE23';
1413   l_transaction_table(l_count).param_value := p_attribute23;
1414   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1415 --
1416   l_count := l_count + 1;
1417   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE24';
1418   l_transaction_table(l_count).param_value := p_attribute24;
1419   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1420 --
1421   l_count := l_count + 1;
1422   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE25';
1423   l_transaction_table(l_count).param_value := p_attribute25;
1424   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1425 --
1426   l_count := l_count + 1;
1427   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE26';
1428   l_transaction_table(l_count).param_value := p_attribute26;
1429   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1430 --
1431   l_count := l_count + 1;
1432   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE27';
1433   l_transaction_table(l_count).param_value := p_attribute27;
1434   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1435 --
1436   l_count := l_count + 1;
1437   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE28';
1438   l_transaction_table(l_count).param_value := p_attribute28;
1439   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1440 --
1441   l_count := l_count + 1;
1442   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE29';
1443   l_transaction_table(l_count).param_value := p_attribute29;
1444   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1445 --
1446   l_count := l_count + 1;
1447   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE30';
1448   l_transaction_table(l_count).param_value := p_attribute30;
1449   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1450 --
1451   l_count := l_count + 1;
1452   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION_CATEGORY';
1453   l_transaction_table(l_count).param_value := p_per_information_category;
1454   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1455 --
1456   l_count := l_count + 1;
1457   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION1';
1458   l_transaction_table(l_count).param_value := p_per_information1;
1459   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1460 --
1461   l_count := l_count + 1;
1462   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION2';
1463   l_transaction_table(l_count).param_value := p_per_information2;
1464   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1465 --
1466   l_count := l_count + 1;
1467   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION3';
1468   l_transaction_table(l_count).param_value := p_per_information3;
1469   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1470 --
1471   l_count := l_count + 1;
1472   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION4';
1473   l_transaction_table(l_count).param_value := p_per_information4;
1474   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1475 --
1476   l_count := l_count + 1;
1477   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION5';
1478   l_transaction_table(l_count).param_value := p_per_information5;
1479   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1480 --
1481   l_count := l_count + 1;
1482   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION6';
1483   l_transaction_table(l_count).param_value := p_per_information6;
1484   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1485 --
1486   l_count := l_count + 1;
1487   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION7';
1488   l_transaction_table(l_count).param_value := p_per_information7;
1489   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1490 --
1491   l_count := l_count + 1;
1492   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION8';
1493   l_transaction_table(l_count).param_value := p_per_information8;
1494   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1495 --
1496   l_count := l_count + 1;
1497   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION9';
1498   l_transaction_table(l_count).param_value := p_per_information9;
1499   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1500 --
1501   l_count := l_count + 1;
1502   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION10';
1503   l_transaction_table(l_count).param_value := p_per_information10;
1504   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1505 --
1506   l_count := l_count + 1;
1507   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION11';
1508   l_transaction_table(l_count).param_value := p_per_information11;
1509   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1510 --
1511   l_count := l_count + 1;
1512   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION12';
1513   l_transaction_table(l_count).param_value := p_per_information12;
1514   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1515 --
1516   l_count := l_count + 1;
1517   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION13';
1518   l_transaction_table(l_count).param_value := p_per_information13;
1519   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1520 --
1521   l_count := l_count + 1;
1522   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION14';
1523   l_transaction_table(l_count).param_value := p_per_information14;
1524   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1525 --
1526   l_count := l_count + 1;
1527   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION15';
1528   l_transaction_table(l_count).param_value := p_per_information15;
1529   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1530 --
1531   l_count := l_count + 1;
1532   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION16';
1533   l_transaction_table(l_count).param_value := p_per_information16;
1534   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1535 --
1536   l_count := l_count + 1;
1537   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION17';
1538   l_transaction_table(l_count).param_value := p_per_information17;
1539   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1540 --
1541   l_count := l_count + 1;
1542   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION18';
1543   l_transaction_table(l_count).param_value := p_per_information18;
1544   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1545 --
1546   l_count := l_count + 1;
1547   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION19';
1548   l_transaction_table(l_count).param_value := p_per_information19;
1549   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1550 --
1551   l_count := l_count + 1;
1552   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION20';
1553   l_transaction_table(l_count).param_value := p_per_information20;
1554   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1555 --
1556   l_count := l_count + 1;
1557   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION21';
1558   l_transaction_table(l_count).param_value := p_per_information21;
1559   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1560 --
1561   l_count := l_count + 1;
1562   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION22';
1563   l_transaction_table(l_count).param_value := p_per_information22;
1564   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1565 --
1566   l_count := l_count + 1;
1567   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION23';
1568   l_transaction_table(l_count).param_value := p_per_information23;
1569   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1570 --
1571   l_count := l_count + 1;
1572   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION24';
1573   l_transaction_table(l_count).param_value := p_per_information24;
1574   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1575 --
1576   l_count := l_count + 1;
1577   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION25';
1578   l_transaction_table(l_count).param_value := p_per_information25;
1579   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1580 --
1581   l_count := l_count + 1;
1582   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION26';
1583   l_transaction_table(l_count).param_value := p_per_information26;
1584   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1585 --
1586   l_count := l_count + 1;
1587   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION27';
1588   l_transaction_table(l_count).param_value := p_per_information27;
1589   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1590 --
1591   l_count := l_count + 1;
1592   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION28';
1593   l_transaction_table(l_count).param_value := p_per_information28;
1594   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1595 --
1596   l_count := l_count + 1;
1597   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION29';
1598   l_transaction_table(l_count).param_value := p_per_information29;
1599   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1600 --
1601   l_count := l_count + 1;
1602   l_transaction_table(l_count).param_name := 'P_PER_INFORMATION30';
1603   l_transaction_table(l_count).param_value := p_per_information30;
1604   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1605 --
1606   l_count := l_count + 1;
1607   l_transaction_table(l_count).param_name := 'P_DATE_OF_DEATH';
1608   l_transaction_table(l_count).param_value := to_char
1609                                               (p_date_of_death
1610                                               ,hr_transaction_ss.g_date_format);
1611   l_transaction_table(l_count).param_data_type := 'DATE';
1612 --
1613   l_count := l_count + 1;
1614   l_transaction_table(l_count).param_name := 'P_BACKGROUND_CHECK_STATUS';
1615   l_transaction_table(l_count).param_value := p_background_check_status;
1616   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1617 --
1618   l_count := l_count + 1;
1619   l_transaction_table(l_count).param_name := 'P_BACKGROUND_DATE_CHECK';
1620   l_transaction_table(l_count).param_value := to_char
1621                                               (p_background_date_check
1622                                               ,hr_transaction_ss.g_date_format);
1623   l_transaction_table(l_count).param_data_type := 'DATE';
1624 --
1625   l_count := l_count + 1;
1626   l_transaction_table(l_count).param_name := 'P_BLOOD_TYPE';
1627   l_transaction_table(l_count).param_value := p_blood_type;
1628   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1629 --
1630   l_count := l_count + 1;
1631   l_transaction_table(l_count).param_name := 'P_CORRESPONDENCE_LANGUAGE';
1632   l_transaction_table(l_count).param_value := p_correspondence_language;
1633   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1634 --
1635   l_count := l_count + 1;
1636   l_transaction_table(l_count).param_name := 'P_FAST_PATH_EMPLOYEE';
1637   l_transaction_table(l_count).param_value := p_fast_path_employee;
1638   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1639 --
1640   l_count := l_count + 1;
1641   l_transaction_table(l_count).param_name := 'P_FTE_CAPACITY';
1642   l_transaction_table(l_count).param_value := to_char(l_fte_capacity);
1643   l_transaction_table(l_count).param_data_type := 'NUMBER';
1644 --
1645   l_count := l_count + 1;
1646   l_transaction_table(l_count).param_name := 'P_HONORS';
1647   l_transaction_table(l_count).param_value := p_honors;
1648   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1649 --
1650   l_count := l_count + 1;
1651   l_transaction_table(l_count).param_name := 'P_INTERNAL_LOCATION';
1652   l_transaction_table(l_count).param_value := p_internal_location;
1653   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1654 --
1655   l_count := l_count + 1;
1656   l_transaction_table(l_count).param_name := 'P_LAST_MEDICAL_TEST_BY';
1657   l_transaction_table(l_count).param_value := p_last_medical_test_by;
1658   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1659 --
1660   l_count := l_count + 1;
1661   l_transaction_table(l_count).param_name := 'P_LAST_MEDICAL_TEST_DATE';
1662   l_transaction_table(l_count).param_value := to_char
1663                                               (p_last_medical_test_date
1664                                               ,hr_transaction_ss.g_date_format);
1665   l_transaction_table(l_count).param_data_type := 'DATE';
1666 --
1667   l_count := l_count + 1;
1668   l_transaction_table(l_count).param_name := 'P_MAILSTOP';
1669   l_transaction_table(l_count).param_value := p_mailstop;
1670   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1671 --
1672   l_count := l_count + 1;
1673   l_transaction_table(l_count).param_name := 'P_OFFICE_NUMBER';
1674   l_transaction_table(l_count).param_value := p_office_number;
1675   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1676 --
1677   l_count := l_count + 1;
1678   l_transaction_table(l_count).param_name := 'P_ON_MILITARY_SERVICE';
1679   l_transaction_table(l_count).param_value := p_on_military_service;
1680   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1681 --
1682   l_count := l_count + 1;
1683   l_transaction_table(l_count).param_name := 'P_PRE_NAME_ADJUNCT';
1684   l_transaction_table(l_count).param_value := p_pre_name_adjunct;
1685   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1686 --
1687   l_count := l_count + 1;
1688   l_transaction_table(l_count).param_name := 'P_PROJECTED_START_DATE';
1689   l_transaction_table(l_count).param_value := to_char
1690                                               (p_projected_start_date
1691                                               ,hr_transaction_ss.g_date_format);
1692   l_transaction_table(l_count).param_data_type := 'DATE';
1693 --
1694   l_count := l_count + 1;
1695   l_transaction_table(l_count).param_name := 'P_RESUME_EXISTS';
1696   l_transaction_table(l_count).param_value := p_resume_exists;
1697   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1698 --
1699   l_count := l_count + 1;
1700   l_transaction_table(l_count).param_name := 'P_RESUME_LAST_UPDATED';
1701   l_transaction_table(l_count).param_value := to_char
1702                                               (p_resume_last_updated
1703                                               ,hr_transaction_ss.g_date_format);
1704   l_transaction_table(l_count).param_data_type := 'DATE';
1705 --
1706   l_count := l_count + 1;
1707   l_transaction_table(l_count).param_name := 'P_SECOND_PASSPORT_EXISTS';
1708   l_transaction_table(l_count).param_value := p_second_passport_exists;
1709   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1710 --
1711   l_count := l_count + 1;
1712   l_transaction_table(l_count).param_name := 'P_STUDENT_STATUS';
1713   l_transaction_table(l_count).param_value := p_student_status;
1714   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1715 --
1716   l_count := l_count + 1;
1717   l_transaction_table(l_count).param_name := 'P_WORK_SCHEDULE';
1718   l_transaction_table(l_count).param_value := p_work_schedule;
1719   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1720 --
1721   l_count := l_count + 1;
1722   l_transaction_table(l_count).param_name := 'P_SUFFIX';
1723   l_transaction_table(l_count).param_value := p_suffix;
1724   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1725 --
1726   l_count := l_count + 1;
1727   l_transaction_table(l_count).param_name := 'P_BENEFIT_GROUP_ID';
1728   l_transaction_table(l_count).param_value := to_char(l_benefit_group_id);
1729   l_transaction_table(l_count).param_data_type := 'NUMBER';
1730 --
1731   l_count := l_count + 1;
1732   l_transaction_table(l_count).param_name := 'P_RECEIPT_OF_DEATH_CERT_DATE';
1733   l_transaction_table(l_count).param_value := to_char
1734                                               (p_receipt_of_death_cert_date
1735                                               ,hr_transaction_ss.g_date_format);
1736   l_transaction_table(l_count).param_data_type := 'DATE';
1737 --
1738   l_count := l_count + 1;
1739   l_transaction_table(l_count).param_name := 'P_COORD_BEN_MED_PLN_NO';
1740   l_transaction_table(l_count).param_value := p_coord_ben_med_pln_no;
1741   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1742 --
1743   l_count := l_count + 1;
1744   l_transaction_table(l_count).param_name := 'P_COORD_BEN_NO_CVG_FLAG';
1745   l_transaction_table(l_count).param_value := p_coord_ben_no_cvg_flag;
1746   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1747 --
1748   l_count := l_count + 1;
1749   l_transaction_table(l_count).param_name := 'P_USES_TOBACCO_FLAG';
1750   l_transaction_table(l_count).param_value := p_uses_tobacco_flag;
1751   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1752 --
1753   l_count := l_count + 1;
1754   l_transaction_table(l_count).param_name := 'P_DPDNT_ADOPTION_DATE';
1755   l_transaction_table(l_count).param_value := to_char
1756                                               (p_dpdnt_adoption_date
1757                                               ,hr_transaction_ss.g_date_format);
1758   l_transaction_table(l_count).param_data_type := 'DATE';
1759 --
1760   l_count := l_count + 1;
1761   l_transaction_table(l_count).param_name := 'P_DPDNT_VLNTRY_SVCE_FLAG';
1762   l_transaction_table(l_count).param_value := p_dpdnt_vlntry_svce_flag;
1763   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1764 --
1765   l_count := l_count + 1;
1766   l_transaction_table(l_count).param_name := 'P_ORIGINAL_DATE_OF_HIRE';
1767   l_transaction_table(l_count).param_value := to_char
1768                                              (p_original_date_of_hire
1769                                              ,hr_transaction_ss.g_date_format);
1770   l_transaction_table(l_count).param_data_type := 'DATE';
1771 --
1772   l_count := l_count + 1;
1773   l_transaction_table(l_count).param_name := 'P_ADJUSTED_SVC_DATE';
1774   l_transaction_table(l_count).param_value := to_char
1775                                               (p_adjusted_svc_date
1776                                               ,hr_transaction_ss.g_date_format);
1777   l_transaction_table(l_count).param_data_type := 'DATE';
1778 --
1779   l_count := l_count + 1;
1780   l_transaction_table(l_count).param_name := 'P_TOWN_OF_BIRTH';
1781   l_transaction_table(l_count).param_value := p_town_of_birth;
1782   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1783 --
1784   l_count := l_count + 1;
1785   l_transaction_table(l_count).param_name := 'P_REGION_OF_BIRTH';
1786   l_transaction_table(l_count).param_value := p_region_of_birth;
1787   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1788 --
1789   l_count := l_count + 1;
1790   l_transaction_table(l_count).param_name := 'P_COUNTRY_OF_BIRTH';
1791   l_transaction_table(l_count).param_value := p_country_of_birth;
1792   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1793 --
1794   l_count := l_count + 1;
1795   l_transaction_table(l_count).param_name := 'P_GLOBAL_PERSON_ID';
1796   l_transaction_table(l_count).param_value := p_global_person_id;
1797   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1798 --
1799   l_count := l_count + 1;
1800   l_transaction_table(l_count).param_name := 'P_PERSON_ID';
1801   l_transaction_table(l_count).param_value := p_person_id;
1802   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1803 --
1804   l_count := l_count + 1;
1805   l_transaction_table(l_count).param_name := 'P_ASSIGNMENT_ID';
1806   l_transaction_table(l_count).param_value := p_assignment_id;
1807   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1808 --
1809   l_count := l_count + 1;
1810   l_transaction_table(l_count).param_name := 'P_PER_OBJECT_VERSION_NUMBER';
1811   l_transaction_table(l_count).param_value := p_per_object_version_number;
1812   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1813 --
1814   l_count := l_count + 1;
1815   l_transaction_table(l_count).param_name := 'P_ASG_OBJECT_VERSION_NUMBER';
1816   l_transaction_table(l_count).param_value := p_asg_object_version_number;
1817   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1818 --
1819   l_count := l_count + 1;
1820   l_transaction_table(l_count).param_name := 'P_PER_EFFECTIVE_START_DATE';
1821   l_transaction_table(l_count).param_value := to_char
1822                                               (p_per_effective_start_date
1823                                               ,hr_transaction_ss.g_date_format);
1824   l_transaction_table(l_count).param_data_type := 'DATE';
1825 --
1826   l_count := l_count + 1;
1827   l_transaction_table(l_count).param_name := 'P_PER_EFFECTIVE_END_DATE';
1828   l_transaction_table(l_count).param_value := to_char
1829                                               (p_per_effective_end_date
1830                                               ,hr_transaction_ss.g_date_format);
1831   l_transaction_table(l_count).param_data_type := 'DATE';
1832 --
1833   l_count := l_count + 1;
1834   l_transaction_table(l_count).param_name := 'P_REVIEW_PROC_CALL';
1835   l_transaction_table(l_count).param_value := p_review_page_region_code;
1836   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1837 --
1838   l_count := l_count + 1;
1839   l_transaction_table(l_count).param_name := 'P_REVIEW_ACTID';
1840   l_transaction_table(l_count).param_value := p_actid;
1841   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1842 --
1843   l_count := l_count + 1;
1844   l_transaction_table(l_count).param_name := 'P_EFFECTIVE_DATE';
1845   l_transaction_table(l_count).param_value := to_char(p_effective_date,
1846                                               hr_transaction_ss.g_date_format);
1847   l_transaction_table(l_count).param_data_type := 'DATE';
1848 --
1849   l_count := l_count + 1;
1850   l_transaction_table(l_count).param_name := 'P_ATTRIBUTE_UPDATE_MODE';
1851   l_transaction_table(l_count).param_value := p_attribute_update_mode;
1852   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1853 --
1854   l_count := l_count + 1;
1855   l_transaction_table(l_count).param_name := 'P_OBJECT_VERSION_NUMBER';
1856   l_transaction_table(l_count).param_value := p_object_version_number;
1857   l_transaction_table(l_count).param_data_type := 'NUMBER';
1858 --
1859  l_count := l_count + 1;
1860   l_transaction_table(l_count).param_name := 'P_APPLICANT_NUMBER';
1861   l_transaction_table(l_count).param_value := p_applicant_number;
1862   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1863 --
1864   l_count := l_count + 1;
1865   l_transaction_table(l_count).param_name := 'P_COMMENTS';
1866   l_transaction_table(l_count).param_value := p_comments;
1867   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1868 --
1869   l_count := l_count + 1;
1870   l_transaction_table(l_count).param_name := 'P_EMPLOYEE_NUMBER';
1871   l_transaction_table(l_count).param_value := p_employee_number;
1872   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1873 --
1874   l_count := l_count + 1;
1875   l_transaction_table(l_count).param_name := 'P_HOLD_APPLICANT_DATE_UNTIL';
1876   l_transaction_table(l_count).param_value := to_char
1877                                               (p_hold_applicant_date_until
1878                                               ,hr_transaction_ss.g_date_format);
1879   l_transaction_table(l_count).param_data_type := 'DATE';
1880 --
1881   l_count := l_count + 1;
1882   l_transaction_table(l_count).param_name := 'P_REHIRE_AUTHORIZOR';
1883   l_transaction_table(l_count).param_value := p_rehire_authorizor;
1884   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1885 --
1886   l_count := l_count + 1;
1887   l_transaction_table(l_count).param_name := 'P_REHIRE_RECOMMENDATION';
1888   l_transaction_table(l_count).param_value := p_rehire_recommendation;
1889   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1890 --
1891   l_count := l_count + 1;
1892   l_transaction_table(l_count).param_name := 'P_REHIRE_REASON';
1893   l_transaction_table(l_count).param_value := p_rehire_reason;
1894   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1895 --
1896   l_count := l_count + 1;
1897   l_transaction_table(l_count).param_name := 'P_FULL_NAME';
1898   l_transaction_table(l_count).param_value := l_full_name;
1899   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1900  --
1901   l_count := l_count + 1;
1902   l_transaction_table(l_count).param_name := 'P_FLOW_NAME';
1903   l_transaction_table(l_count).param_value := p_flow_name;
1904   l_transaction_table(l_count).param_data_type := 'VARCHAR2';
1905  --
1906 
1907  hr_transaction_ss.save_transaction_step
1908                 (p_item_type => p_item_type
1909                 ,p_item_key => p_item_key
1910                 ,p_actid => p_actid
1911                 ,p_login_person_id     => p_login_person_id
1912                 ,p_transaction_step_id => l_transaction_step_id
1913                 ,p_api_name => g_package || 'PROCESS_API'
1914                 ,p_transaction_data => l_transaction_table);
1915 --
1916 
1917   p_person_id := l_person_id;
1918   p_assignment_id := l_assignment_id;
1919   p_per_object_version_number := l_per_ovn;
1920   p_asg_object_version_number := l_asg_ovn;
1921   p_per_effective_start_date := l_per_effective_start_date;
1922   p_per_effective_end_date := l_per_effective_end_date;
1923   p_full_name := l_full_name;
1924   p_per_comment_id := l_per_comment_id;
1925   p_assignment_sequence := l_assignment_sequence;
1926   p_assignment_number := l_assignment_number;
1927 --
1928 -- Need to convert the boolean true/false value to varchar2 value because on
1929 -- return back to Java program which won't recognize the value.
1930   if l_name_combination_warning
1931   then
1932      p_name_combination_warning := 'Y';
1933   else
1934      p_name_combination_warning := 'N';
1935   end if;
1936 --
1937   if l_assign_payroll_warning
1938   then
1939      p_assign_payroll_warning := 'Y';
1940   else
1941      p_assign_payroll_warning := 'N';
1942   end if;
1943 --
1944   if l_orig_hire_warning
1945   then
1946      p_orig_hire_warning := 'Y';
1947   else
1948      p_orig_hire_warning := 'N';
1949   end if;
1950 --
1951   p_employee_number := l_employee_number;
1952 
1953   hr_utility.set_location('Leaving  ben_process_cobra_person_ss.create_person ' || hr_process_person_ss.g_person_id, 200);
1954 
1955 EXCEPTION
1956   when g_data_error then
1957     hr_utility.raise_error;
1958 
1959   when others then
1960   -- NOCOPY Changes
1961 	  p_person_id                         := null;
1962 	  p_assignment_id                     := null;
1963 	  p_per_object_version_number         := null;
1964 	  p_asg_object_version_number         := null;
1965 	  p_per_effective_start_date          := null;
1966 	  p_per_effective_end_date            := null;
1967 	  p_full_name                         := null;
1968 	  p_per_comment_id                    := null;
1969 	  p_assignment_sequence               := null;
1970 	  p_assignment_number                 := null;
1971 	  p_name_combination_warning          := null;
1972 	  p_assign_payroll_warning            := null;
1973 	  p_orig_hire_warning                 := null;
1974 	-- NOCOPY Changes
1975         -- Bug 2149113
1976           fnd_msg_pub.add;  --hr_utility.raise_error;
1977           p_return_status := 'N';
1978 	--End 2149113
1979 END create_person;
1980 --
1981 --   End Registration
1982 --
1983 END ben_process_cobra_person_ss;
1984 --
1985 --