虽然是通过录屏可以实现,但是想尝试通过从最根本出发,直接操作信息类型,实现人员信息的创建和修改。
调用FM: HR_INFOTYPE_OPERATION实现某信息的批量修改。为了操作不受影响,一般会在调用 HR_INFOTYPE_OPERATION之前,先在系统锁定此人,操作完之后在对此人解锁。锁定人员调用FM: BAPI_EMPLOYEE_ENQUEUE,解锁人员调用: BAPI_EMPLOYEE_DEQUEUE。
1 HR_INFOTYPE_OPERATION的用法示例。
l_wa_pa0008-pernr = g_wa_extrec-pernr. "人员编号
l_wa_pa0008-begda = g_wa_extrec-begda. "开始日期
l_wa_pa0008-endda = g_wa_extrec-endda. "支付结束日期
l_wa_pa0008-preas = g_wa_extrec-preas. "更改原因
l_wa_pa0008-trfar = g_wa_extrec-trfar. "类型
l_wa_pa0008-trfgr = g_wa_extrec-trfgr. "组
l_wa_pa0008-trfst = g_wa_extrec-trfst. "级别
l_wa_pa0008-trfgb = l_trfgb.
l_wa_pa0008-lga01 = '1000'.
l_wa_pa0008-lga02 = '1001'.
l_wa_pa0008-lga03 = '1002'.
l_wa_pa0008-bet01 = g_wa_extrec-jbgz. "基本工资
l_wa_pa0008-bet02 = g_wa_extrec-gwgz. "岗位工资
l_wa_pa0008-bet03 = g_wa_extrec-fdgz. "浮动工资
call function 'HR_INFOTYPE_OPERATION'
exporting
infty = c_infty_0008 "输入信息类型
number = l_wa_pa0008-pernr "本次处理的人员编号
record = l_wa_pa0008 "需要修改或者创建的信息
operation = c_actio_ins "操作类型(INS或者 DEL等)
importing
return = l_wa_bapireturn1
key = l_wa_bapipakey.
通过l_wa_bapireturn1-type判断是否执行成功。如果需要处理子信息类型,可以 SUBTYPE = 子类型来处理。
2 锁定人员
call function 'BAPI_EMPLOYEE_ENQUEUE'
exporting
number = g_wa_extrec-pernr
importing
return = l_wa_bapireturn1.
一般判断锁定成功后,再进行相关的操作。
3 解锁人员
call function 'BAPI_EMPLOYEE_DEQUEUE'
exporting
number = l_wa_pa0008-pernr.
转载自:http://hi.baidu.com/hellohainiao/item/9c3d830c1e06ab9fa3df4387