1. 标准界面创建员工
设置员工编号生成方式(自动、手动),Navigation:全域人力资源经理 -> 工作结构 -> 组织 -> 摘要
选择业务群组,点击“其他”按钮
选择“企业群组资讯”
创建员工。Navigation: 全域人力资源经理 -> 人员 -> 输入与维护
输入姓名,选择性别,作业选择“建立雇用”
保存员工,员工编号自动生成。
同时创建的信息包括1条默认主分配信息,从主界面下方点击“工作指派”按钮进入分配界面。
同时还创建了一条员工服务期记录,同主界面点击“其他”按钮选择“人员型态用途”打开界面
至此一条包含最少信息的员工就录入好了。生成3条数据包括1条员工基本信息,1条分配信息以及1条员工服务期记录,保存在3张系统表中:
per_all_people_f (person_id)
per_all_assignments_f (person_id)
per_person_type_usages_f (person_id)
2. 标准API导入员工
declare
lc_employee_number PER_ALL_PEOPLE_F.EMPLOYEE_NUMBER%TYPE;
ln_person_id PER_ALL_PEOPLE_F.PERSON_ID%TYPE;
ln_assignment_id PER_ALL_ASSIGNMENTS_F.ASSIGNMENT_ID%TYPE;
ln_object_ver_number PER_ALL_ASSIGNMENTS_F.OBJECT_VERSION_NUMBER%TYPE;
ln_asg_ovn NUMBER;
ld_per_effective_start_date PER_ALL_PEOPLE_F.EFFECTIVE_START_DATE%TYPE;
ld_per_effective_end_date PER_ALL_PEOPLE_F.EFFECTIVE_END_DATE%TYPE;
lc_full_name PER_ALL_PEOPLE_F.FULL_NAME%TYPE;
ln_per_comment_id PER_ALL_PEOPLE_F.COMMENT_ID%TYPE;
ln_assignment_sequence PER_ALL_ASSIGNMENTS_F.ASSIGNMENT_SEQUENCE%TYPE;
lc_assignment_number PER_ALL_ASSIGNMENTS_F.ASSIGNMENT_NUMBER%TYPE;
lb_name_combination_warning BOOLEAN;
lb_assign_payroll_warning BOOLEAN;
lb_orig_hire_warning BOOLEAN;
begin
fnd_global.apps_initialize(
user_id => -1,
resp_id => 21514, --select * from fnd_responsibility_vl where RESPONSIBILITY_NAME = '全域人力資源經理'
resp_appl_id => 800);
hr_employee_api.create_employee(
-- Input data elements
p_validate => FALSE,
p_hire_date => sysdate,
p_business_group_id => fnd_profile.value_specific('PER_BUSINESS_GROUP_ID'),
p_last_name => 'TEST002', --姓氏
p_sex => 'M', --性别
p_person_type_id => 1120, --员工
p_national_identifier => NULL,
p_original_date_of_hire => sysdate,
-- Output data elements
p_employee_number => lc_employee_number,
p_person_id => ln_person_id,
p_assignment_id => ln_assignment_id,
p_per_object_version_number => ln_object_ver_number,
p_asg_object_version_number => ln_asg_ovn,
p_per_effective_start_date => ld_per_effective_start_date,
p_per_effective_end_date => ld_per_effective_end_date,
p_full_name => lc_full_name,
p_per_comment_id => ln_per_comment_id,
p_assignment_sequence => ln_assignment_sequence,
p_assignment_number => lc_assignment_number,
p_name_combination_warning => lb_name_combination_warning,
p_assign_payroll_warning => lb_assign_payroll_warning,
p_orig_hire_warning => lb_orig_hire_warning);
commit;
DBMS_OUTPUT.put_line('Employee Created. Employee_number: '|| lc_employee_number);
EXCEPTION WHEN OTHERS THEN
ROLLBACK;
DBMS_OUTPUT.put_line(SQLERRM);
END;