2020-09-14 12:38发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好。
我想使用以下详细信息在SAP HCM系统中创建或更新员工记录:
名字,中间名和姓氏,DOB,电子邮件,组织ID,职位,供应商ID,人员区域,开始日期和结束日期。
对任何BAPI有任何想法吗?
问候。
使用功能模块'HR_MAINTAIN_MASTERDATA'创建/更新员工记录。
CALL FUNCTION'HR_MAINTAIN_MASTERDATA'导出
massn ='ZS'
actio ='INS' tclas ='A' begda = i_input_data-startdate werks = lv_persa persg ='E' persk ='51'计划 = i_input_data-positionno 导入 return1 = e_message 表格 proposal_values = lt_values modified_keys = lt_modified_keys。
要更新的信息类型可以在proposal_values中传递。
请参见下面的代码示例:
*操作类型-雇用非工资单 ls_values-infty ='0000'。 ls_values-fname ='P0000-MASSN'。 ls_values-fval ='ZS'。 APPEND ls_values至lt_values。清除ls_values。
*动作原因 ls_values-infty ='0000'。 ls_values-fname ='P0000-MASSG'。 ls_values-fval ='51'。附加ls_values TO lt_values。清除ls_values。 *操作类型-终止非工资单 ls_values-infty ='0000'。 ls_values-fname ='Q0000-MASSN'。 ls_values -fval ='ZU'。将ls_values附加到lt_values。清除ls_values。 ls_values-infty ='0001'。 ls_values-fname ='P0001-BTRTL'。 ls_values-fval = i_input_data-location。附加ls_values至lt_values。清除ls_values。 ls_values-infty ='0002'。 ls_values-fname ='P0002-ANRED'。 ls_values-fval = i_input_data-title。附加ls_values到lt_values。清除ls_values。 ls_values-infty ='0002'。 ls_values-fname ='P0002-NACHN '。 ls_values-fval = i_input_data-lname。附加ls_values到lt_values。清除ls_values。 ls_values-infty ='0002'。 ls_values-fname ='P0002 -VORNA'。 ls_values-fval = i_input_data-fname。 附录ls_values到lt_values。清除ls_values。 ls_values-infty ='0002'。 ls_values-fname ='P0002-MIDNM'。 ls_values-fval = i_input_data-mname。< br>追加ls_values到lt_values。清除ls_values。 ls_values-infty ='0002'。 ls_values-fname ='P0002-RUFNM'。 ls_values-fval = i_input_data-pname 。附加ls_values到lt_values。清除ls_values。 ls_values-infty ='0002'。 ls_values-fname ='P0002-GBDAT'。 ls_values-fval = i_input_data -birthdate。将ls_values附加到lt_values。清除ls_values。 *终止日期 ls_values-infty ='0019'。 ls_values-fname ='P0019-TERMN'。 ls_values-fval = i_input_data-enddate。附加ls_values至lt_values。清除ls_values。 ls_values-infty ='0315'。 ls_values-fname ='P0315-ENDDA '。 ls_values-fval = i_input_data-enddate。附加ls_values到lt_values。清除ls_values。 ls_values-infty ='0315'。 ls_values-fname ='P0315 -LIFNR'。 ls_values-fval = i_input_data-vendor_id。附加ls_values到lt_values。清除ls_values。 ls_values-infty ='0105'。 ls_values-fname ='P0105-SUBTY '。 ls_values-fval ='0010'。追加ls_values至lt_values。清除ls_values。 ls_values-infty ='0105'。 ls_values-fname ='P0105 -USRID_LONG'。 ls_values-fval = i_input_data-email。附加ls_values至lt_values。清除ls_values。
注意。
此功能需要小心。 它较旧,并且绕过了更新的DCIF。 我相信如果您要使用这种方法,可以使用一个更新的函数。
首先,您是否了解BAPI实际上是什么,什么是"业务对象"? 其次,您了解功能,远程功能和接口吗?.....如果您对这些问题回答"是"...。您甚至尝试过看吗?....交易BAPI? 然后在"人事管理"->"人事管理"下有大量"雇员"业务对象。 每个文档甚至都有文档。 我建议您去那里看看。
HCM P&F现在很有趣,因为我可以在睡觉时做。 哈哈,我必须保持"其他"技能的敏锐度.....做FreeCodeCamp课程,做Laracast/Laravel教程,做Fiori和SAPUI5教程(第5次哈哈).....或者我觉得自己正在成为 古。 哈哈
最多设置5个标签!
使用功能模块'HR_MAINTAIN_MASTERDATA'创建/更新员工记录。
CALL FUNCTION'HR_MAINTAIN_MASTERDATA'
导出
massn ='ZS'
actio ='INS'
tclas ='A'
begda = i_input_data-startdate
werks = lv_persa
persg ='E'
persk ='51'
计划 = i_input_data-positionno
导入
return1 = e_message
表格
proposal_values = lt_values
modified_keys = lt_modified_keys。
要更新的信息类型可以在proposal_values中传递。
请参见下面的代码示例:
*操作类型-雇用非工资单
ls_values-infty ='0000'。
ls_values-fname ='P0000-MASSN'。
ls_values-fval ='ZS'。
APPEND ls_values至lt_values。
清除ls_values。
*动作原因
ls_values-infty ='0000'。
ls_values-fname ='P0000-MASSG'。
ls_values-fval ='51'。
附加ls_values TO lt_values。
清除ls_values。
*操作类型-终止非工资单
ls_values-infty ='0000'。
ls_values-fname ='Q0000-MASSN'。
ls_values -fval ='ZU'。
将ls_values附加到lt_values。
清除ls_values。
ls_values-infty ='0001'。
ls_values-fname ='P0001-BTRTL'。
ls_values-fval = i_input_data-location。
附加ls_values至lt_values。
清除ls_values。
ls_values-infty ='0002'。
ls_values-fname ='P0002-ANRED'。
ls_values-fval = i_input_data-title。
附加ls_values到lt_values。
清除ls_values。
ls_values-infty ='0002'。
ls_values-fname ='P0002-NACHN '。
ls_values-fval = i_input_data-lname。
附加ls_values到lt_values。
清除ls_values。
ls_values-infty ='0002'。
ls_values-fname ='P0002 -VORNA'。
ls_values-fval = i_input_data-fname。
附录ls_values到lt_values。
清除ls_values。
ls_values-infty ='0002'。
ls_values-fname ='P0002-MIDNM'。
ls_values-fval = i_input_data-mname。< br>追加ls_values到lt_values。
清除ls_values。
ls_values-infty ='0002'。
ls_values-fname ='P0002-RUFNM'。
ls_values-fval = i_input_data-pname 。
附加ls_values到lt_values。
清除ls_values。
ls_values-infty ='0002'。
ls_values-fname ='P0002-GBDAT'。
ls_values-fval = i_input_data -birthdate。
将ls_values附加到lt_values。
清除ls_values。
*终止日期
ls_values-infty ='0019'。
ls_values-fname ='P0019-TERMN'。
ls_values-fval = i_input_data-enddate。
附加ls_values至lt_values。
清除ls_values。
ls_values-infty ='0315'。
ls_values-fname ='P0315-ENDDA '。
ls_values-fval = i_input_data-enddate。
附加ls_values到lt_values。
清除ls_values。
ls_values-infty ='0315'。
ls_values-fname ='P0315 -LIFNR'。
ls_values-fval = i_input_data-vendor_id。
附加ls_values到lt_values。
清除ls_values。
ls_values-infty ='0105'。
ls_values-fname ='P0105-SUBTY '。
ls_values-fval ='0010'。
追加ls_values至lt_values。
清除ls_values。
ls_values-infty ='0105'。
ls_values-fname ='P0105 -USRID_LONG'。
ls_values-fval = i_input_data-email。
附加ls_values至lt_values。
清除ls_values。
注意。
此功能需要小心。 它较旧,并且绕过了更新的DCIF。 我相信如果您要使用这种方法,可以使用一个更新的函数。
首先,您是否了解BAPI实际上是什么,什么是"业务对象"? 其次,您了解功能,远程功能和接口吗?.....如果您对这些问题回答"是"...。您甚至尝试过看吗?....交易BAPI? 然后在"人事管理"->"人事管理"下有大量"雇员"业务对象。 每个文档甚至都有文档。 我建议您去那里看看。
HCM P&F现在很有趣,因为我可以在睡觉时做。 哈哈,我必须保持"其他"技能的敏锐度.....做FreeCodeCamp课程,做Laracast/Laravel教程,做Fiori和SAPUI5教程(第5次哈哈).....或者我觉得自己正在成为 古。 哈哈
一周热门 更多>