【SAP-HCM】--HR人员信息导入函数
人员基本信息导入函数:HR_MAINTAIN_MASTERDATA
人员其他信息类型导入函数:HR_INFOTYPE_OPERATION
不逼逼,直接上代码,这两个函数还是相对简单易懂的
*根据操作类型查找对应的T529A 操作类型对应的值IF gt_alv IS NOT INITIAL.SELECT massn,stat1,stat2INTO TABLE @DATA(lt_t529a)FROM t529aFOR ALL ENTRIES IN @gt_alvWHERE massn = @gt_alv-massn.ENDIF.**操作
* pernr TYPE p0000-pernr, "人员编码
* begda TYPE p0000-begda, " 开始日期
* endda TYPE p0000-endda, " 结束日期
* massn TYPE pspar-massn, "操作类型
* massg TYPE p0000-massg, "操作原因
* plans TYPE pspar-plans, "职位
* werks TYPE pspar-werks, "人事范围
* persg TYPE pspar-persg, "员工组
* persk TYPE pspar-persk, "员工子组
**组织分配
** btrtl TYPE p0001-btrtl, "人事子范围
* abkrs TYPE p0001-abkrs, "工资范围
* ANSVH type P0001-ANSVH, "事业部
* SACHP type P0001-SACHP, "人事管理员
* SACHZ type P0001-SACHZ, "时间管理员
* SACHA type p0001-SACHA, "工资管理员
*
**个人数据
* nachn TYPE p0002-nachn, "姓名
* vorna TYPE p0002-vorna, "英文名
* name2 type p0002-name2, "曾用名
* gesch TYPE p0002-gesch, "性别码 1代表男 2代表女
* gbdat TYPE p0002-gbdat, "出生日期
* gbort TYPE p0002-gbort, "出生地
** gblnd TYPE p0002-gblnd, "出生国家
** gbdep TYPE p0002-gbdep, "省份
** natio TYPE p0002-natio, "国籍
* famst TYPE p0002-famst, "婚姻状况
* hukot TYPE p3527-hukot, "户口类型 考虑添加
* ZTELENT type P0002-ZTELENT,"人才类型*定义局部变量,局部表及结构,用于反馈数据是否导入成功DATA:lt_pprop TYPE TABLE OF pprop,ls_pprop TYPE pprop,lt_pskey TYPE TABLE OF pskey,ls_pskey TYPE pskey.DATA:lt_return LIKE bapireturn,lt_return1 LIKE bapireturn1,lt_hr_return LIKE hrhrmm_msg.DATA:lt_return_sd LIKE bapireturn1,lt_return_cj LIKE bapireturn1,ls_pa0002 LIKE p0002,ls_pa3527 LIKE p3527,lt_return2 LIKE bapireturn1,lt_key LIKE bapipakey.* 定义人事子范围 使用变量参考DATA:lv_btrtl TYPE p0001-btrtl.DATA:lv_tabix TYPE i.SORT lt_t529a BY massn.LOOP AT gt_alv INTO gs_alv.lv_tabix = sy-tabix.READ TABLE lt_t529a INTO DATA(ls_t529a) WITH KEY massn = gs_alv-massn BINARY SEARCH.IF sy-subrc = 0.
*定义信息类型是0000的数据类型ls_pprop-infty = '0000'.ls_pprop-fname = 'P0000-stat1'.ls_pprop-fval = ls_t529a-stat1 .APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.ls_pprop-infty = '0000'.ls_pprop-fname = 'P0000-stat2'.ls_pprop-fval = ls_t529a-stat2 .APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.ENDIF.*定义信息类型是0000的数据类型ls_pprop-infty = '0000'.ls_pprop-fname = 'P0000-MASSG'. "操作原因ls_pprop-fval = gs_alv-massg . "'A1'.APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.**定义信息类型是0001的数据类型
* ls_pprop-infty = '0001'.
* ls_pprop-fname = 'P0001-BTRTL'. "人事子范围
* ls_pprop-fval = gs_alv-btrtl . "'1010'.
* APPEND ls_pprop TO lt_pprop.
* CLEAR ls_pprop.
* 定义信息类型是0001的 人事自范围IF gs_alv-werks = '9300' OR gs_alv-werks = '9800' OR gs_alv-werks = '9900'.lv_btrtl = '1010'.ELSEIF gs_alv-werks = '9500'.lv_btrtl = '1020'.ELSEIF gs_alv-werks = '9600'.lv_btrtl = '1030'.ELSEIF gs_alv-werks = '9700'.lv_btrtl = '1040'.ENDIF.ls_pprop-infty = '0001'.ls_pprop-fname = 'P0001-BTRTL'. "人事子范围ls_pprop-fval = lv_btrtl .APPEND ls_pprop TO lt_pprop.CLEAR:ls_pprop,lv_btrtl.ls_pprop-infty = '0001'.ls_pprop-fname = 'P0001-ABKRS'. "工资范围ls_pprop-fval = gs_alv-abkrs .APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.ls_pprop-infty = '0001'.ls_pprop-fname = 'P0001-ANSVH'. "事业部ls_pprop-fval = gs_alv-ansvh .APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.ls_pprop-infty = '0001'.ls_pprop-fname = 'P0001-SACHP'. "人事管理员ls_pprop-fval = gs_alv-sachp .APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.ls_pprop-infty = '0001'.ls_pprop-fname = 'P0001-SACHZ'. "时间管理员ls_pprop-fval = gs_alv-sachz .APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.ls_pprop-infty = '0001'.ls_pprop-fname = 'P0001-SACHA'. "工资管理员ls_pprop-fval = gs_alv-sacha .APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.*公司代码=人事范围=组??(后台字段关联关系相等)ls_pprop-infty = '0001'.ls_pprop-fname = 'P0001-BUKRS'. "公司代码ls_pprop-fval = gs_alv-werks ."'9900'.APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.ls_pprop-infty = '0001'.ls_pprop-fname = 'P0001-SBMOD'. "组ls_pprop-fval = gs_alv-werks . " '9900'.APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.* 0002开始日期ls_pprop-infty = '0002'.ls_pprop-fname = 'P0002-BEGDA'. "0002的开始日期ls_pprop-fval = gs_alv-begda .APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.* 姓名 p0002-nachnls_pprop-infty = '0002'.ls_pprop-fname = 'P0002-NACHN'. "ls_pprop-fval = gs_alv-nachn .APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.* 英文名 p0002-vornals_pprop-infty = '0002'.ls_pprop-fname = 'P0002-VORNA'. "ls_pprop-fval = gs_alv-vorna .APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.* 曾用名 P0002-NAME2ls_pprop-infty = '0002'.ls_pprop-fname = 'P0002-NAME2'. "ls_pprop-fval = gs_alv-name2 .APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.* 性别码 p0002-geschls_pprop-infty = '0002'.ls_pprop-fname = 'P0002-GESCH'. "ls_pprop-fval = gs_alv-gesch .APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.* 出生日期 p0002-gbdatls_pprop-infty = '0002'.ls_pprop-fname = 'P0002-GBDAT'. "ls_pprop-fval = gs_alv-gbdat .APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.* 出生地 p0002-gbortls_pprop-infty = '0002'.ls_pprop-fname = 'P0002-GBORT'. "ls_pprop-fval = gs_alv-gbort .APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.* 出生国家 p0002-gblndls_pprop-infty = '0002'.ls_pprop-fname = 'P0002-GBLND'. "ls_pprop-fval = gs_alv-gblnd .APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.* 省份p0002-gbdepls_pprop-infty = '0002'.ls_pprop-fname = 'P0002-GBDEP'. "ls_pprop-fval = gs_alv-gbdep .APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.* 国籍 p0002-natiols_pprop-infty = '0002'.ls_pprop-fname = 'P0002-NATIO'. "ls_pprop-fval = gs_alv-natio .APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.* 婚姻状况 p0002-famstls_pprop-infty = '0002'.ls_pprop-fname = 'P0002-FAMST'. "ls_pprop-fval = gs_alv-famst .APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.* 人才类型 P0002-ZTELENTls_pprop-infty = '0002'.ls_pprop-fname = 'P0002-ZTELENT'. "ls_pprop-fval = gs_alv-ztelent .APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.ls_pprop-infty = '3527'.ls_pprop-fname = 'P3527-HUKOT'. "ls_pprop-fval = gs_alv-hukot .APPEND ls_pprop TO lt_pprop.CLEAR ls_pprop.* 创建人员基本信息,主要用于创建对应的人员编码CALL FUNCTION 'HR_MAINTAIN_MASTERDATA'EXPORTING
* PERNR = '00000000'massn = gs_alv-massn "'Z0' "操作类型actio = 'INS' "插入操作/修改操作/删除操作tclas = 'A' "数据保留的事物类begda = gs_alv-begda "sy-datum "起始时间endda = gs_alv-endda "'99991231' "结束时间
* OBJPS =
* SEQNR =
* SPRPS =
* SUBTY =werks = gs_alv-werks "人事范围persg = gs_alv-persg "员工组persk = gs_alv-persk "员工子组plans = gs_alv-plans "职位
* DIALOG_MODE = '0'
* LUW_MODE = '1'
* NO_EXISTENCE_CHECK = ' '
* NO_ENQUEUE = ' 'IMPORTINGreturn = lt_returnreturn1 = lt_return1hr_return = lt_hr_returnTABLESproposed_values = lt_ppropmodified_keys = lt_pskey.IF lt_return-type = 'E'.CONCATENATE '创建人员编号失败' lt_return-message INTO gs_alv-zmessage.gs_alv-icon = '@5D@'.ELSE.gs_alv-zmessage = '创建人员编号成功'.gs_alv-icon = '@5B@'.READ TABLE lt_pskey INTO ls_pskey INDEX 1.IF sy-subrc = 0.gs_alv-pernr = ls_pskey-pernr.ENDIF.COMMIT WORK AND WAIT.*准备0002信息类型的数据,传入对应的数据ls_pa0002-pernr = gs_alv-pernr. "人员编号ls_pa0002-begda = gs_alv-begda. "开始日期ls_pa0002-endda = gs_alv-endda. "结束日期ls_pa0002-nachn = gs_alv-nachn. "姓名ls_pa0002-vorna = gs_alv-vorna. "英文名ls_pa0002-name2 = gs_alv-name2. "曾用名ls_pa0002-gesch = gs_alv-gesch. "性别码ls_pa0002-gbdat = gs_alv-gbdat. "出生日期ls_pa0002-gbort = gs_alv-gbort. "出生地ls_pa0002-gblnd = gs_alv-gblnd. "出生国家ls_pa0002-gbdep = gs_alv-gbdep. "省份
* ls_pa0002-natio = gs_alv-natio. "ls_pa0002-famst = gs_alv-famst. "婚姻状况ls_pa0002-ztelent = gs_alv-ztelent. "人才类型ls_pa3527-pernr = gs_alv-pernr. "人员编号ls_pa3527-begda = gs_alv-gbdat. "开始日期ls_pa3527-endda = gs_alv-endda. "结束日期ls_pa3527-hukot = gs_alv-hukot. "人才类型*锁定人员编码CALL FUNCTION 'BAPI_EMPLOYEE_ENQUEUE'EXPORTINGnumber = gs_alv-pernrIMPORTINGreturn = lt_return_sd.*修改0002信息类型的数据CALL FUNCTION 'HR_INFOTYPE_OPERATION'EXPORTINGinfty = '0002' "HR模块把人员信息进行了分类,不同的信息需要指定不同的信息类型number = ls_pa0002-pernr "人员编码subtype = ls_pa0002-subty "子信息类型objectid = ls_pa0002-objps "对象标识lockindicator = ls_pa0002-sprps "人力资源主数据记录的锁定标志validityend = ls_pa0002-endda "结束日期validitybegin = ls_pa0002-begda "开始日期recordnumber = ls_pa0002-seqnr "相同关键值信息类型记录的编号record = ls_pa0002 "人员信息表operation = 'MOD' "判断是插入还是修改(值域看ACTIO)tclas = 'A' "数据保留事务类,一般用默认即可dialog_mode = '0' "nocommit = '' "
* VIEW_IDENTIFIER =secondary_record = ls_pa3527IMPORTINGreturn = lt_return2key = lt_key.
*IF lt_return2 IS NOT INITIAL.CONCATENATE gs_alv-zmessage lt_return2-message '但是信息类型0002创建失败,请检查' INTO gs_alv-zmessage.gs_alv-icon = '@5D@'.ENDIF.CALL FUNCTION 'BAPI_EMPLOYEE_ENQUEUE'EXPORTINGnumber = gs_alv-pernrIMPORTINGreturn = lt_return_sd.ENDIF.MODIFY gt_alv FROM gs_alv INDEX lv_tabix.CLEAR:gs_alv,lt_pprop,ls_pprop,lt_pskey,ls_pskey,lt_return,lt_return1,lt_hr_return,lt_return_sd,lt_return_cj,ls_pa0002,lt_return2,lt_key,lv_tabix.ENDLOOP.
相关文章:
【SAP-HCM】--HR人员信息导入函数
人员基本信息导入函数:HR_MAINTAIN_MASTERDATA 人员其他信息类型导入函数:HR_INFOTYPE_OPERATION 不逼逼,直接上代码,这两个函数还是相对简单易懂的 *根据操作类型查找对应的T529A 操作类型对应的值IF gt_alv IS NOT INITIAL.S…...
【开源】基于JAVA的大学兼职教师管理系统
项目编号: S 004 ,文末获取源码。 \color{red}{项目编号:S004,文末获取源码。} 项目编号:S004,文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、研究内容三、界面展示3.1 登录注册3.2 学生教师管…...
Pyhon函数
import time # # for i in range(1,10): # j1 # for j in range(1,i1): # print(f"{i}x{j}{i*j} " ,end) # print() #复用,代码,精简,复用度高def j99(n1,max10): for i in range(n,max):jifor j in ran…...
使用vuex完成小黑记事本案例
使用vuex完成小黑记事本案例 App.vue <template><div id"app"><TodoHeader></TodoHeader><TodoMain ></TodoMain><TodoFooter></TodoFooter></div> </template><script> import TodoMain from …...
进阶理解:leetcode115.不同的子序列(细节深度)
这道题是困难题,本章是针对于动态规划解决,对于思路进行一个全面透彻的讲解,但是并不是对于基础讲解思路,而是渗透到递推式和dp填数的详解,如果有读者不清楚基本的解题思路,请看我的这篇文章算法训练营DAY5…...
数据结构-哈希表(C语言)
哈希表的概念 哈希表就是: “将记录的存储位置与它的关键字之间建立一个对应关系,使每个关键字和一个唯一的存储位置对 应。” 哈希表又称:“散列法”、“杂凑法”、“关键字:地址法”。 哈希表思想 基本思想是在关键字和存…...
HCIA-综合实验(三)
综合实验(三) 1 实验拓扑2 IP 规划3 实验需求一、福州思博网络规划如下:二、上海思博网络规划如下:三、福州思博与上海思博网络互联四、网络优化 4 配置思路4.1 福州思博配置在 SW1、SW2、SW3 上配置交换网络SW1、SW2、SW3 运行 S…...
Java程序员的成长路径
熟悉JAVA语言基础语法。 学习JAVA基础知识,推荐阅读书单中的经典书籍。 理解并掌握面向对象的特性,比如继承,多态,覆盖,重载等含义,并正确运用。 熟悉SDK中常见类和API的使用,比如࿱…...
几种常用的排序
int[] arr new int[]{1, 2,8, 7, 5};这是提前准备好的数组 冒泡排序 public static void bubbleSort(int[] arr) {int len arr.length;for (int i 0; i < len - 1; i) {for (int j 0; j < len - i - 1; j) {if (arr[j] > arr[j1]) {int temp arr[j];arr[j] ar…...
性能测试【第三篇】Jmeter的使用
线程数:10 ,设置10个并发 Ramp-Up时间(秒):所有线程在多少时间内启动,如果设置5,那么每秒启动2个线程 循环次数:请求的重复次数,如果勾选"永远"将一直发送请求 持续时间时间:设置场景运行的时间 启动延迟:设置场景延迟启动时间 响应断言 响应断言模式匹配规则 包括…...
业务:业务系统检查项参考
名录明细云平台摸底1.原有云平台体系:VMware、openstack、ovirt、k8s、docker、混合云系列及版本 2.原有云平台规模,物理机数量、虚拟机数量、迁移业务系统所占配额 3.待补充系统摸底 (适用于物理主机)每一台虚拟机或物理机: 1.系统全局参数…...
解决公网下,k8s calico master节点无法访问node节点创建的pod
目的:解决pod部署成功后,只能在node节点访问,而master节点无法访问 原因:集群搭建时,没有配置公网进行kubectl操作,从而导致系统默认node节点,使用内网IP加入k8s集群!如下ÿ…...
六边形架构
Alistair Cockburn是于1953年出生在美国的一位软件开发方法学家。他毕业于康奈尔大学计算机科学专业,并获得了博士学位。 Cockburn在敏捷软件开发领域做出了许多重要的贡献,他被广泛认可为敏捷方法学的奠基人之一。他提出了许多关于敏捷开发的原则和实践…...
基于单片机的智能家居安保系统(论文+源码)
1.系统设计 本次基于单片机的智能家居安保系统设计,在功能上如下: 1)以51单片机为系统控制核心; 2)温度传感器、人体红外静释电、烟雾传感器来实现检测目的; 3)以GSM模块辅以按键来实现远/近程…...
盘点3种Python网络爬虫过程中的中文乱码的处理方法
网络爬虫过程中三种中文乱码的处理方案,希望对大家的学习有所帮助 一、思路 其实解决问题的关键点就是在于一点,就是将乱码的部分进行处理,而处理的方案主要可以从两个方面进行出发。其一是针对整体网页进行提前编码,其二是针对…...
小程序富文本图片大小问题
文章目录 概要uniapp小程序情况解决方法及完整示例 概要 在小程序使用富文本或者在nuiapp(小程序的)使用富文本都会转为 <rich-text nodes"<p class"p class">内容</p>”></rich-text>如果是这种情况的话在css…...
Diagrams——制作短小精悍的流程图
今天为大家分享的是一款轻量级的流程图绘制软件——Diagrams。 以特定的图形符号加上说明,表示算法的图,称为流程图或框图。流程图是流经一个系统的信息流、观点流或部件流的图形代表。我们常用流程图来说明某一过程。 流程图使用一些标准符号代表某些类…...
Elasticsearch基础条件查询
条件查询 query:查询 match:匹配 match_all:匹配所有 #第一种 GET /shopping/_search?q名字:张三#第二种 GET /shopping/_search {"query": {"match": {"名字": "张三"}} }#全量查询 match_all G…...
【SAP-ABAP】SAP与外围系统对接方式
SAP作为接受方 1.JAVA直接配置IP、账号、密码(有些人叫SAPWEBAPI)调用SAP里面的RFC函数 2.SAP发布RFC函数,配置webservice地址 3.SAP发布ODATA服务 4.SAP发布restful的http服务 5.我不太懂的UI5和FIORI本质好像也是odata服务 6.IDOC SA…...
云计算的发展趋势
云计算的发展一直是一个极具活力和创新的领域。随着技术的不断进步和应用场景的拓展,云计算将在未来继续发挥重要作用。以下是云计算发展的一些趋势: 边缘计算的崛起: 随着物联网设备的普及和应用场景的增多,边缘计算成为一个重要…...
三维GIS开发cesium智慧地铁教程(5)Cesium相机控制
一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点: 路径验证:确保相对路径.…...
Docker 运行 Kafka 带 SASL 认证教程
Docker 运行 Kafka 带 SASL 认证教程 Docker 运行 Kafka 带 SASL 认证教程一、说明二、环境准备三、编写 Docker Compose 和 jaas文件docker-compose.yml代码说明:server_jaas.conf 四、启动服务五、验证服务六、连接kafka服务七、总结 Docker 运行 Kafka 带 SASL 认…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院挂号小程序
一、开发准备 环境搭建: 安装DevEco Studio 3.0或更高版本配置HarmonyOS SDK申请开发者账号 项目创建: File > New > Create Project > Application (选择"Empty Ability") 二、核心功能实现 1. 医院科室展示 /…...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一)
宇树机器人多姿态起立控制强化学习框架论文解析 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一) 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化…...
Unit 1 深度强化学习简介
Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库,例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体,比如 SnowballFight、Huggy the Do…...
全志A40i android7.1 调试信息打印串口由uart0改为uart3
一,概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本:2014.07; Kernel版本:Linux-3.10; 二,Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01),并让boo…...
七、数据库的完整性
七、数据库的完整性 主要内容 7.1 数据库的完整性概述 7.2 实体完整性 7.3 参照完整性 7.4 用户定义的完整性 7.5 触发器 7.6 SQL Server中数据库完整性的实现 7.7 小结 7.1 数据库的完整性概述 数据库完整性的含义 正确性 指数据的合法性 有效性 指数据是否属于所定…...
Python Ovito统计金刚石结构数量
大家好,我是小马老师。 本文介绍python ovito方法统计金刚石结构的方法。 Ovito Identify diamond structure命令可以识别和统计金刚石结构,但是无法直接输出结构的变化情况。 本文使用python调用ovito包的方法,可以持续统计各步的金刚石结构,具体代码如下: from ovito…...
CVPR2025重磅突破:AnomalyAny框架实现单样本生成逼真异常数据,破解视觉检测瓶颈!
本文介绍了一种名为AnomalyAny的创新框架,该方法利用Stable Diffusion的强大生成能力,仅需单个正常样本和文本描述,即可生成逼真且多样化的异常样本,有效解决了视觉异常检测中异常样本稀缺的难题,为工业质检、医疗影像…...
WEB3全栈开发——面试专业技能点P7前端与链上集成
一、Next.js技术栈 ✅ 概念介绍 Next.js 是一个基于 React 的 服务端渲染(SSR)与静态网站生成(SSG) 框架,由 Vercel 开发。它简化了构建生产级 React 应用的过程,并内置了很多特性: ✅ 文件系…...
