【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…...
云计算的发展趋势
云计算的发展一直是一个极具活力和创新的领域。随着技术的不断进步和应用场景的拓展,云计算将在未来继续发挥重要作用。以下是云计算发展的一些趋势: 边缘计算的崛起: 随着物联网设备的普及和应用场景的增多,边缘计算成为一个重要…...
【WiFi帧结构】
文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成:MAC头部frame bodyFCS,其中MAC是固定格式的,frame body是可变长度。 MAC头部有frame control,duration,address1,address2,addre…...
无法与IP建立连接,未能下载VSCode服务器
如题,在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈,发现是VSCode版本自动更新惹的祸!!! 在VSCode的帮助->关于这里发现前几天VSCode自动更新了,我的版本号变成了1.100.3 才导致了远程连接出…...
UDP(Echoserver)
网络命令 Ping 命令 检测网络是否连通 使用方法: ping -c 次数 网址ping -c 3 www.baidu.comnetstat 命令 netstat 是一个用来查看网络状态的重要工具. 语法:netstat [选项] 功能:查看网络状态 常用选项: n 拒绝显示别名&#…...
YSYX学习记录(八)
C语言,练习0: 先创建一个文件夹,我用的是物理机: 安装build-essential 练习1: 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件,随机修改或删除一部分,之后…...
在WSL2的Ubuntu镜像中安装Docker
Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包: for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...
ArcGIS Pro制作水平横向图例+多级标注
今天介绍下载ArcGIS Pro中如何设置水平横向图例。 之前我们介绍了ArcGIS的横向图例制作:ArcGIS横向、多列图例、顺序重排、符号居中、批量更改图例符号等等(ArcGIS出图图例8大技巧),那这次我们看看ArcGIS Pro如何更加快捷的操作。…...
html css js网页制作成品——HTML+CSS榴莲商城网页设计(4页)附源码
目录 一、👨🎓网站题目 二、✍️网站描述 三、📚网站介绍 四、🌐网站效果 五、🪓 代码实现 🧱HTML 六、🥇 如何让学习不再盲目 七、🎁更多干货 一、👨…...
CSS设置元素的宽度根据其内容自动调整
width: fit-content 是 CSS 中的一个属性值,用于设置元素的宽度根据其内容自动调整,确保宽度刚好容纳内容而不会超出。 效果对比 默认情况(width: auto): 块级元素(如 <div>)会占满父容器…...
保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek
文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama(有网络的电脑)2.2.3 安装Ollama(无网络的电脑)2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...
【Android】Android 开发 ADB 常用指令
查看当前连接的设备 adb devices 连接设备 adb connect 设备IP 断开已连接的设备 adb disconnect 设备IP 安装应用 adb install 安装包的路径 卸载应用 adb uninstall 应用包名 查看已安装的应用包名 adb shell pm list packages 查看已安装的第三方应用包名 adb shell pm list…...
