0% found this document useful (0 votes)
152 views

Hrms API Script

This package body defines a procedure called insert_hrms_data that inserts data into HRMS tables from a temporary table. It declares numerous variables to store data from the temporary table, calls HR APIs to activate existing employee assignments or create new employee records and assignments, and loops through a cursor selecting data from various tables to process.

Uploaded by

Lava Kunne
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
152 views

Hrms API Script

This package body defines a procedure called insert_hrms_data that inserts data into HRMS tables from a temporary table. It declares numerous variables to store data from the temporary table, calls HR APIs to activate existing employee assignments or create new employee records and assignments, and loops through a cursor selecting data from various tables to process.

Uploaded by

Lava Kunne
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 13

--Plain Text Attachment [ Scan and Save to Computer | Save to Yahoo!

Briefcase ]
CREATE OR REPLACE package body TPCSED_insert_hrms_data_pkg
AS
procedure insert_hrms_data (errbuf VARCHAR2,errnum VARCHAR2)
AS
l_effective_date
date;
l_organization_id
number;
l_cagr_grade_def_id
number
default NULL;
l_soft_coding_keyflex_id
number
default NULL;
l_people_group_id
number
default NULL;
l_concatenated_segments
varchar2(30)
default NULL;
l_cagr_concatenated_segments
varchar2(30)
default NULL;
l_group_name
varchar2(30)
default NULL;
l_comment_id
number
default NULL;
l_hourly_salaried_warning
boolean;
l_emp_num
varchar2(30);
l_person_id
number;
l_assignment_id
number;
l_per_object_version_number
number;
l_asg_object_version_number
number;
l_per_effective_start_date
date;
l_per_effective_end_date
date;
l_full_name
varchar2(240);
l_per_comment_id
number;
l_assignment_sequence
number;
l_assignment_number
varchar2(30);
l_name_combination_warning
boolean;
l_assign_payroll_warning
boolean;
l_orig_hire_warning
boolean;
l_object_version_number
number ;
l_address_id
number;
l_effective_start_date
date;
l_effective_end_date
date;
l_datetrack_update_mode
varchar2(30);
l_change_reason
varchar2(30);
l_org_now_no_manager_warning
boolean
default TRUE;
l_other_manager_warning
boolean
default TRUE;
l_spp_delete_warning
boolean
default TRUE;
l_tax_district_changed_warning
boolean
default FALSE;
l_entries_changed_warning
varchar2(10)
default
'Y';
l_special_ceiling_step_id
number
default NULL;
l_concat_segments
varchar2(50)
default
hr_api.g_varchar2;
l_contract_id
number
default hr_api.g
_number;
l_establishment_id
number
default hr_api.g
_number;
l_scl_segment1
varchar2(50)
default
hr_api.g_varchar2;
l_employment_category
varchar2(30)
default
hr_api.g_varchar2;
l_payroll_id
number
default hr_api.g
_number;
l_pay_basis_id
number
default hr_api.g
_number;
l_called_from_mass_update
boolean
default false;
l_grade_id
number
default NULL;

l_position_id
l_job_id
l_location_id
_number;
l_no_managers_warning
l_ass_attribute_category
l_ass_attribute1
l_ass_attribute2
v_organization_id
l_date_from
l_person_type_id
_number;
l_assignment_status_type_id
_number;
l_leaving_reason
hr_api.g_varchar2;
l_supervisor_warning
l_event_warning
l_interview_warning
l_review_warning
l_recruiter_warning
l_asg_future_changes_warning
l_pay_proposal_warning
l_dod_warning
l_last_std_process_date_out
l_last_standard_process_date
e;
l_final_process_date
l_termination_accepted_person
l_comments
hr_api.g_varchar2;
l_notified_termination_date
l_projected_termination_date
V_ORG_NAME
V_SHORT_NAME
V_SOB
v_user_name
v_user
l_town_or_city
l_postal_code
l_period_of_service_id
l_user_id
--v_ccid
v_user_id
v_resp_key
v_org_id
v_org_id_new
v_user_id_new
v_object_version_number
V_job_id
V_location_desc
V_supervisor_id
V_cms_id
V_assignment_number
v_sex_code
V_start_date
l_SET_OF_BOOKS_ID
l_business_group_id

number
number;
number

default NULL;
default hr_api.g

boolean ;
varchar2(50);
varchar2(50);
varchar2(10);
number;
date;
number

default hr_api.g

number

default hr_api.g

varchar2(100)
boolean;
boolean;
boolean;
boolean;
boolean;
boolean;
boolean;
boolean;
date;
date

default

default hr_api.g_dat

date;
number
varchar2(100)

default hr_api.g_number;
default

date;
date;

NUMBER := 1001;
NUMBER :=0;

varchar2(50);
varchar2(50);
number ;
varchar2(150);
varchar2(150);
varchar2(150);
varchar2(150);
varchar2(50);
number;
number;
number;
varchar2(50);
number;
number;
number;
number;
number;
varchar2(50);
number;
varchar2(50);
varchar2(30);
varchar2(10);
date;

v_ccid
lv_emp_exists_flag
ld_effective_date
lv_user_exists_flag
next_record

NUMBER :=1137; --1917;


VARCHAR2(2) :='N';
DATE :='1-Nov-2005';
VARCHAR2(2) :='N';
exception;

CURSOR hr_cur is
select
paf.effective_start_date -- Changed 15/03/2004
,tet.employee_number
--mhd.employee_code
,tet.employee_last_name
,tet.gender_code
,tet.dob
---,decode(oem.set_of_books_id,2,1003,5,1015,7,1023,8,1027,12,1043,16,1059,17,10
63) as v_ccid
--,decode(SUBSTR(MHD.ORGANIZATION_NAME,1,INSTR(MHD.ORGANIZATION_NAME,'.')-1)
--,'ME India','OIE_EXPENSE_REPORTS_ME_INDIA','OIE_EXPENSE_REPORTS_ME_CORP',null)
as v_resp_key
--,mhd.cms_id
--,mhd.location_desc
--,mhd.business_group_id
,tet.start_date
,tet.organization_name
--,mhd.attribute_category
,tet.title
,UPPER(tet.address) address
,tet.email_address
,tet.user_name as v_user_name
--,mhd.employee_status
--,oem.SET_OF_BOOKS_ID
--,oem.ORGANISATION_NAME
,hou.organization_id
,pj.job_id
,ppf.person_id as supervisor_id
,ppf.effective_start_date as supervisor_start_date --Changed 29/03/2004
--,upper(SUBSTR(MHD.email_address,1,INSTR(MHD.email_address,'@')-1)) as v_user_n
ame
--,OEM.ORG_SHORT_NAME
,ppf1.person_id
,ppf1.sex as v_sex_org
--,fusr.employee_id as user_id
,paf.assignment_id
,paf.assignment_number as V_assignment_number
--,paf.organization_id as v_org_id
,paf.object_version_number mac1 -- Changed 15/03/2004
,ppf.object_version_number mac2 -- Changed 15/03/2004
,pos.period_of_service_id
,pos.object_version_number mac3
,pos.DATE_START
,paf.job_id as org_job_id
,paf.supervisor_id as org_supervisor_id
,paf.position_id
,paf.ass_attribute2 as org_location_desc
--,paf.ass_attribute3 as org_CMS_ID
--,fusr1.user_id as v_user_id
--,pgr.grade_id
FROM
--mbfl_cust.mbfl_hrms_data_new mhd
--,ORGANISATION_ENTITY_MAPPING OEM

TPCSED_EMP_TEMP tet
,hr_all_organization_units hou
,per_jobs pj
,per_all_people_f ppf
,per_all_people_f ppf1
--,fnd_user fusr --USER
--,fnd_user fusr1
,per_all_assignments_f paf
,per_periods_of_service pos
--,per_grades pgr
where
--SUBSTR(NVL(MHD.ORGANIZATION_NAME,0),1,INSTR(MHD.ORGANIZATION_NAME,'.')-1)=OEM.
ORG_SHORT_NAME(+)
tet.department=hou.name(+)
and tet.job_code=pj.name(+)
--and tet.supervisor_code=ppf.employee_number(+)
and tet.supervisor_name=ppf.last_name(+)
--and tet.processed_flag='N'
and tet.employee_number = ppf1.employee_number(+)
--and upper(SUBSTR(MHD.email_address,1,INSTR(MHD.email_address,'@')-1))
= fusr1.USER_NAME(+)
--and ppf1.person_id = fusr.employee_id(+)--USER
and ppf1.person_id=paf.person_id(+)
and ppf1.person_id=pos.person_id(+)
AND TRUNC(SYSDATE) BETWEEN NVL(TRUNC(paf.EFFECTIVE_START_DATE),'01-Feb-2004')
AND NVL(TRUNC(paf.effective_end_date),TRUNC(SYSDATE+1))
AND NVL(TRUNC(ppf1.EFFECTIVE_END_DATE),'31-Dec-4712') = '31-Dec-4712'
AND NVL(ppf1.PERSON_TYPE_ID,0) != 9;
--AND pgr.name = tet.grade
--and paf.position_id is null;
BEGIN
FOR hr_rec IN hr_cur
LOOP
/*IF hr_rec.employee_status != 'S' THEN
--------------------------------------Updating Assignment Records of
the Existing
Employees------------------------------------------------------------------------------ Changed 18/03/2004
IF (hr_rec.job_id is null) THEN
V_job_id:= hr_rec.org_job_id;
ELSE
V_job_id:= hr_rec.job_id;
END IF;
IF hr_rec.supervisor_id is null THEN
V_supervisor_id:= hr_rec.org_supervisor_id;
ELSE
V_supervisor_id:= hr_rec.supervisor_id;
END IF;
IF hr_rec.location_desc is null THEN
V_location_desc:= hr_rec.org_location_desc;
ELSE
V_location_desc:= hr_rec.location_desc;

END IF;
IF hr_rec.cms_id is null THEN
V_cms_id:= hr_rec.org_cms_id;
ELSE
V_cms_id:= hr_rec.cms_id;
END IF;
IF hr_rec.gender_code is null THEN
v_sex_code:= hr_rec.v_sex_org;
Else
v_sex_code:= hr_rec.gender_code;
END IF;
IF (hr_rec.gender_code is null) and (hr_rec.v_sex_org is null) THEN
v_sex_code:= 'M';
END IF;
IF hr_rec.person_id is not null then
IF (hr_rec.supervisor_start_date is null) and
(hr_rec.org_supervisor_id is null)
then
v_start_date:=hr_rec.start_date;
else
IF hr_rec.supervisor_start_date is null
then
v_start_date:=hr_rec.start_date;
else
IF hr_rec.effective_start_date >= hr_rec.supervi
sor_start_date
then v_start_date:=hr_rec.effective_start_date;
else v_start_date:=hr_rec.supervisor_start_date;
END IF;
--

END IF;
END IF;*/

---------------------------------assignment API's---------------------hr_assignment_api.activate_emp_asg
(
p_validate
=>false
,p_effective_date
=>v_start_date -- Changed 29/03/2004
,p_datetrack_update_mode
=>'CORRECTION'
,p_assignment_id
=>hr_rec.assignment_id
,p_change_reason
=>l_change_reason
,p_object_version_number
=>hr_rec.mac1
,p_assignment_status_type_id
=>l_assignment_status_type_id
,p_effective_start_date
=>l_effective_start_date
,p_effective_end_date
=>l_effective_end_date
);
hr_assignment_api.update_emp_asg_criteria
(
p_validate
=>false
,p_effective_date
=>v_start_date -- Changed 29/03/20
04

,p_datetrack_update_mode
,p_assignment_id
,p_object_version_number
,p_organization_id
--,p_position_id
18/03/2004
,p_job_id
-- Changed 18/03/2004
,p_location_id
,p_group_name
,p_effective_start_date
,p_effective_end_date
,p_org_now_no_manager_warning
,p_other_manager_warning
,p_spp_delete_warning
,p_entries_changed_warning
,p_tax_district_changed_warning
,p_concatenated_segments
,p_special_ceiling_step_id
,p_people_group_id
,p_soft_coding_keyflex_id
,p_concat_segments
,p_contract_id
,p_establishment_id
,p_scl_segment1
,p_employment_category
,p_payroll_id
,p_pay_basis_id
,p_called_from_mass_update
);*/

=>'CORRECTION'
=>hr_rec.assignment_id
=>hr_rec.mac1
=>hr_rec.v_org_id
=>hr_rec.position_id -- Changed
=>V_job_id
=>l_location_id
=>l_group_name
=>l_effective_start_date
=>l_effective_end_date
=>l_org_now_no_manager_warning
=>l_other_manager_warning
=>l_spp_delete_warning
=>l_entries_changed_warning
=>l_tax_district_changed_warning
=>l_concatenated_segments
=>l_special_ceiling_step_id
=>l_people_group_id
=>l_soft_coding_keyflex_id
=>l_concat_segments
=>l_contract_id
=>l_establishment_id
=>l_scl_segment1
=>l_employment_category
=>l_payroll_id
=>l_pay_basis_id
=>l_called_from_mass_update

----------------------------------------------Creating New Employee


Record and Assignment
Record-------------------------------------------------------------------------ELSE
--BEGIN
BEGIN
select 'Y'
into lv_emp_exists_flag
from per_all_people_f
where employee_number = hr_rec.employee_number;
EXCEPTION
WHEN NO_DATA_FOUND THEN
lv_emp_exists_flag := 'N';
WHEN OTHERS THEN
lv_emp_exists_flag := 'N';
END;
IF (lv_emp_exists_flag = 'N') THEN
hr_employee_api.create_employee
(
p_hire_date
rec.start_date
,p_business_group_id
,p_last_name
ame--employee_name
,p_sex
code

=>ld_effective_date--hr_
=>l_business_group_id
=>hr_rec.employee_last_n
=>hr_rec.gender_

,p_date_of_birth
=>hr_rec.dob
,p_email_address
=>hr_rec.email_address
,p_attribute1
=>hr_rec.start_date
,p_attribute2
=>hr_rec.org_location_desc
,p_title
=> hr_rec.title--Changed 18/03/2004
--,p_attribute3
=>v_cms_id
,p_employee_number
=>hr_rec.employee_number
,p_person_id
=>l_person_id
,p_assignment_id
=>l_assignment_id
,p_per_object_version_number
=>l_per_object_version_number
,p_asg_object_version_number
=>l_asg_object_version_number
,p_per_effective_start_date
=>l_per_effective_start_date
,p_per_effective_end_date
=>l_per_effective_end_date
,p_full_name
=>l_full_name
,p_per_comment_id
=>l_per_comment_id
,p_assignment_sequence
=>l_assignment_sequence
,p_assignment_number
=>l_assignment_number
,p_name_combination_warning
=>l_name_combination_warning
,p_assign_payroll_warning
=>l_assign_payroll_warning
,p_orig_hire_warning
=>l_orig_hire_warning
);
fnd_file.put_line(fnd_file.log, 'After create employee. '||l_person_id);
hr_person_address_api.create_person_address
(
p_validate
=>false
,p_effective_date
=>ld_effective_date--hr_rec.start_date
,p_person_id
=>l_person_id
,p_primary_flag
=>'Y'
,p_date_from
=>ld_effective_date--hr_rec.start_date
,p_address_line1
=>hr_rec.address
,p_town_or_city
=>l_town_or_city
,p_postal_code
=>l_postal_code
,p_country
=>'IND'
,p_style
=>'GENERIC'
,p_address_id
=>l_address_id
,p_object_version_number
=>l_object_version_number
);
fnd_file.put_line(fnd_file.log, 'After create address. '||l_address_id);
hr_assignment_api.activate_emp_asg
(
p_validate
,p_effective_date
,p_datetrack_update_mode
,p_assignment_id
,p_change_reason
,p_object_version_number
,p_assignment_status_type_id
,p_effective_start_date
,p_effective_end_date
);
fnd_file.put_line(fnd_file.log, 'After

=>false
=>ld_effective_date--hr_rec.start_date
=>'CORRECTION'
=>l_assignment_id
=>l_change_reason
=>l_object_version_number
=>l_assignment_status_type_id
=>l_effective_start_date
=>l_effective_end_date
create assign.'||l_assignment_id);

hr_assignment_api.update_emp_asg_criteria
(
p_validate
=>false
,p_effective_date
=>ld_effective_date--hr_rec.start_da

te
,p_datetrack_update_mode
=>'CORRECTION'
,p_assignment_id
=>l_assignment_id
,p_object_version_number
=>l_object_version_number
,p_organization_id
=>hr_rec.organization_id
,p_position_id
=>hr_rec.position_id
--, p_grade_id
=> hr_rec.grade_id
,p_job_id
=>hr_rec.job_id--V_job_id -- C
hanged 18/03/2004
,p_location_id
=>l_location_id
,p_group_name
=>l_group_name
,p_effective_start_date
=>l_effective_start_date
,p_effective_end_date
=>l_effective_end_date
,p_org_now_no_manager_warning
=>l_org_now_no_manager_warning
,p_other_manager_warning
=>l_other_manager_warning
,p_spp_delete_warning
=>l_spp_delete_warning
,p_entries_changed_warning
=>l_entries_changed_warning
,p_tax_district_changed_warning
=>l_tax_district_changed_warning
,p_concatenated_segments
=>l_concatenated_segments
,p_special_ceiling_step_id
=>l_special_ceiling_step_id
,p_people_group_id
=>l_people_group_id
,p_soft_coding_keyflex_id
=>l_soft_coding_keyflex_id
,p_concat_segments
=>l_concat_segments
,p_contract_id
=>l_contract_id
,p_establishment_id
=>l_establishment_id
,p_scl_segment1
=>l_scl_segment1
,p_employment_category
=>l_employment_category
,p_payroll_id
=>l_payroll_id
,p_pay_basis_id
=>l_pay_basis_id
,p_called_from_mass_update
=>l_called_from_mass_update
);
fnd_file.put_line(fnd_file.log, 'After update assign criteria. '||l_assignment_i
d);
hr_assignment_api.update_emp_asg
(
p_validate
=>false
,p_effective_date
=>ld_effective_date--hr_rec.start_date
-- Changed 15/03/2004
,p_datetrack_update_mode
=>'CORRECTION'
,p_assignment_id
=>l_assignment_id
,p_supervisor_id
=>hr_rec.supervisor_id -- Changed 18/03/200
4
,p_object_version_number
=>l_object_version_number
,p_assignment_number
=>l_assignment_number
,p_set_of_books_id
=>l_set_of_books_id
,p_default_code_comb_id
=>v_ccid
,p_cagr_grade_def_id
=>l_cagr_grade_def_id
,p_cagr_concatenated_segments
=>l_cagr_concatenated_segments
,p_concatenated_segments
=>l_concatenated_segments
,p_soft_coding_keyflex_id
=>l_soft_coding_keyflex_id
,p_ass_attribute2
=>V_location_desc -- Changed
18/03/2004
--,p_ass_attribute3
=>v_cms_id
,p_comment_id
=>l_comment_id
,p_effective_start_date
=>l_effective_start_date
,p_effective_end_date
=>l_effective_end_date
,p_no_managers_warning
=>l_no_managers_warning
,p_other_manager_warning
=>l_other_manager_warning
,p_hourly_salaried_warning
=>l_hourly_salaried_warning

);
fnd_file.put_line(fnd_file.log, 'After update assign . '||l_assignment_id);
ELSE
hr_assignment_api.update_emp_asg
(
p_validate
=>false
,p_effective_date
=>ld_effective_d
ate--v_start_date -- Changed 29/03/2004
,p_datetrack_update_mode
=>'CORRECTION'
,p_assignment_id
=>hr_rec.assignment_id
,p_supervisor_id
=>hr_rec.supervisor_id --V_superviso
r_id -- Changes 18/03/2004
,p_object_version_number
=>hr_rec.mac1
,p_assignment_number
=>V_assignment_number
,p_set_of_books_id
=>l_SET_OF_BOOKS_ID --hr_rec.set_of
_books_id
,p_default_code_comb_id
=>v_ccid --hr_rec.v_cci
d
,p_cagr_grade_def_id
=>l_cagr_grade_def_id
,p_cagr_concatenated_segments
=>l_cagr_concatenated_segments
,p_concatenated_segments
=>l_concatenated_segments
,p_soft_coding_keyflex_id
=>l_soft_coding_keyflex_id
--,p_ass_attribute_category
=>hr_rec.attribute_categ
ory
,p_ass_attribute2
=>V_location_des
c --Changed 18/03/2004
--,p_ass_attribute3
=>v_cms_id
,p_comment_id
=>l_comment_id
,p_effective_start_date
=>l_effective_start_date
,p_effective_end_date
=>l_effective_end_date
,p_no_managers_warning
=>l_no_managers_warning
,p_other_manager_warning
=>l_other_manager_warning
,p_hourly_salaried_warning
=>l_hourly_salaried_warning
);
COMMIT;
END IF;
COMMIT;
-----------------Determining if User Name needs to be created------------------------------------------begin
SELECT 'Y'
into lv_user_exists_flag
from fnd_user
where user_name = UPPER(hr_rec.v_user_name);
EXCEPTION
WHEN NO_DATA_FOUND THEN
lv_user_exists_flag := 'N';
WHEN OTHERS THEN
lv_user_exists_flag := 'N';
END;
IF (lv_user_exists_flag = 'N') THEN
IF ( hr_rec.v_user_name is not null) then
fnd_file.put_line(fnd_file.log, 'in user name not null . '||hr_rec.v_use

r_name);
FND_USER_PKG.CreateUser
(
x_user_name

=>hr

_rec.v_user_name
,x_owner
,x_employee_id

=>'CUST'

,x_unencrypted_password
,x_email_address

=>'welcome'
=>hr_rec.email_a

=>l_

person_id
ddress
,x_start_date

=>trunc(

sysdate)
,x_end_date
=>trunc(sysd
ate+3650));
fnd_file.put_line(fnd_file.log, 'after creating user name . '||hr_rec.v_user_na
me);
FND_USER_PKG.enableuser
(
username
=>hr_rec.v_user_name
,start_date

=>trunc(

sysdate)
,end_date
=>trunc(sysd
ate+3650));
fnd_file.put_line(fnd_file.log, 'after enabling user name . '||hr_rec.v_user_na
me);
FND_USER_PKG.AddResp
(username
=>UPPER(hr_rec.v_user_name)
,resp_app
'
,resp_key
XPENSE_REPORTS'--hr_rec.v_resp_key
,security_group
ARD'
,description
net Expenses'
,start_date
sysdate)
,end_date
ate+3650));
FND_USER_PKG.AddResp
(username
=>UPPER(hr_rec.v_user_name)
,resp_app
,resp_key
ELF_SERVICE_TIME'--hr_rec.v_resp_key
,security_group
ARD'
,description
Service Time'
,start_date
sysdate)
,end_date
ate+3650));
FND_USER_PKG.AddResp

=>'SQLAP
=>'OIE_E
=>'STAND
=>'Inter
=>trunc(
=>trunc(sysd

=>'HXC'
=>'HXC_S
=>'STAND
=>'Self
=>trunc(
=>trunc(sysd

(username
=>UPPER(hr_rec.v_user_name)
,resp_app
=>'FND'
,resp_key

=>'FNDWF

,security_group

=>'STAND

_USER'
ARD'
,description
=>'Workflow User'
,start_date

=>trunc(

sysdate)
,end_date

=>trunc(sysdate+

3650));
FND_USER_PKG.AddResp
(username
=>UPPER(hr_rec.v_user_name)
,resp_app
=>'PO'
,resp_key
=>'TPCSED_PURCHASING_REQUESTOR'--hr_rec.v_resp_key
,security_group
=>'STANDARD'
,description
=>'TPCSED Purchasing Requestor Responsibiltiy'
,start_date
=>trunc(sysdate)
,end_date
unc(sysdate+3650));
COMMIT;
select user_id
into
v_user_id_new
from fnd_user
where user_name=UPPER(hr_rec.v_user_name);
INSERT INTO ak_web_user_sec_attr_values
(
web_user_id
,attribute_code
,attribute_application_id
,number_value
,created_by
,creation_date
,last_updated_by
,last_update_date
,last_update_login)
VALUES
(v_user_id_new
,'ICX_HR_PERSON_ID'
,178
,l_person_id
,-1
,sysdate
,-1
,sysdate
,-1);

=>tr

INSERT INTO ak_web_user_sec_attr_values


( web_user_id
,attribute_code
,attribute_application_id
,number_value
,created_by
,creation_date
,last_updated_by
,last_update_date
,last_update_login)
VALUES
(v_user_id_new
,'TO_PERSON_ID'
,178
,l_person_id
,-1
,sysdate
,-1
,sysdate
,-1);
END IF;
END IF;
--------------------Disabling the User and Terminating the Employee Record-----------------ELSE
IF hr_rec.assignment_id is not null THEN
IF (hr_rec.v_user_name is not null and hr_rec.v_user_id is not null)
THEN
fnd_user_pkg.disableUser
(
username => hr_rec.v_user_name
);
end if;
hr_ex_employee_api.actual_termination_emp
(
--p_validate
=>'false'
p_effective_date
=>hr_rec.DATE_START ---trunc(sys
date)
,p_period_of_service_id
=>hr_rec.period_of_service_id
,p_object_version_number
=>hr_rec.mac3 -- Changed 15/03
/2004
,p_actual_termination_date
=>trunc(sysdate+45)
,p_last_standard_process_date
=>l_last_standard_process_date
,p_person_type_id
=>9
,p_assignment_status_type_id
=>l_assignment_status_type_id
,p_leaving_reason
=>l_leaving_reason
,p_last_std_process_date_out
=>l_last_std_process_date_out
,p_supervisor_warning
=>l_supervisor_warning
,p_event_warning
=>l_event_warning
,p_interview_warning
=>l_interview_warning
,p_review_warning
=>l_review_warning
,p_recruiter_warning
=>l_recruiter_warning
,p_asg_future_changes_warning
=>l_asg_future_changes_warning
,p_entries_changed_warning
=>l_entries_changed_warning
,p_pay_proposal_warning
=>l_pay_proposal_warning

,p_dod_warning
);
hr_ex_employee_api.update_term_details_emp
(
--p_validate
p_effective_date
sdate)
,p_period_of_service_id
,p_object_version_number
03/2004
,p_termination_accepted_person
,p_accepted_termination_date
,p_comments
,p_leaving_reason
,p_notified_termination_date
,p_projected_termination_date
);

=>l_dod_warning

=> 'false'
=> hr_rec.DATE_START ---trunc(sy
=>hr_rec.period_of_service_id
=>hr_rec.mac3
-- Changed 15/
=>l_termination_accepted_person
=>trunc(sysdate+45)
=>l_comments
=>l_leaving_reason
=>l_notified_termination_date
=>l_projected_termination_date

hr_ex_employee_api.final_process_emp
(
-- p_validate
=>false
p_period_of_service_id
=>hr_rec.period_of_service_id
,p_object_version_number
=>hr_rec.mac3 -- Changed 15/03
/2004
,p_final_process_date
=>l_final_process_date
,p_org_now_no_manager_warning
=>l_org_now_no_manager_warning
,p_asg_future_changes_warning
=>l_asg_future_changes_warning
,p_entries_changed_warning
=>l_entries_changed_warning
);
END IF;
END IF;*/
update TPCSED_EMP_TEMP
--mbfl_cust.mbfl_hrms_data_new
set processed_flag='Y'
where employee_number=hr_rec.employee_number; --and processed_flag='';
COMMIT;
/*EXCEPTION
WHEN NEXT_RECORD THEN
rollback;
update TPCSED_EMP_TEMP
set
processed_flag
= 'Y'--'Not loaded er
ror code ('|| ls_error_code||')',
,message
= 'ERROR'
where employee_number=hr_rec.employee_number;

END;

commit;
WHEN OTHERS THEN
rollback;
*/

END LOOP;
END insert_hrms_data;
end TPCSED_insert_hrms_data_pkg;

You might also like