当前位置:网站首页>HR获取入职日期 RP_GET_HIRE_DATE
HR获取入职日期 RP_GET_HIRE_DATE
2022-08-09 15:43:00 【gavingxh】

源码分析
* XJG Unicode
FUNCTION RP_GET_HIRE_DATE.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*" IMPORTING
*" VALUE(PERSNR) LIKE PERNR-PERNR
*" VALUE(CHECK_INFOTYPES)
*" VALUE(DATUMSART) LIKE P0041-DAR01 DEFAULT '01'
*" VALUE(STATUS2) DEFAULT '3'
*" VALUE(P0016_OPTIONEN) DEFAULT ' '
*" EXPORTING
*" VALUE(HIREDATE) LIKE P0000-BEGDA
*"----------------------------------------------------------------------
RP-LOWDATE-HIGHDATE.
DATA: BEGIN OF INIT,
DATE LIKE P0000-BEGDA,
END OF INIT.
DATA: BEGIN OF DAT,
DAR LIKE P0041-DAR01,
DAT LIKE P0041-DAT01,
END OF DAT.
REFRESH: P0000, P0001, P0016, P0041.
HIREDATE = HIGH-DATE.
IF CHECK_INFOTYPES CS '0000'.
* Infotyp P0000 berücksichtigen
RP-READ-INFOTYPE PERSNR 0000 P0000 LOW-DATE HIGH-DATE.
PROVIDE * FROM P0000 BETWEEN LOW-DATE AND HIGH-DATE.
IF P0000-BEGDA <> INIT-DATE AND P0000-BEGDA < HIREDATE.
CHECK STATUS2 CS P0000-STAT2.
HIREDATE = P0000-BEGDA.
ENDIF.
ENDPROVIDE.
ENDIF.
IF CHECK_INFOTYPES CS '0001'.
* Infotyp P0001 berücksichtigen
RP-READ-INFOTYPE PERSNR 0001 P0001 LOW-DATE HIGH-DATE.
PROVIDE * FROM P0001 BETWEEN LOW-DATE AND HIGH-DATE.
IF P0001-BEGDA <> INIT-DATE AND P0001-BEGDA < HIREDATE.
HIREDATE = P0001-BEGDA.
ENDIF.
ENDPROVIDE.
ENDIF.
IF CHECK_INFOTYPES CS '0016'.
* Infotyp P0016 berücksichtigen
RP-READ-INFOTYPE PERSNR 0016 P0016 LOW-DATE HIGH-DATE.
PROVIDE * FROM P0016 BETWEEN LOW-DATE AND HIGH-DATE.
IF P0016_OPTIONEN IS INITIAL OR P0016_OPTIONEN CS 'EINDT'.
IF P0016-EINDT <> INIT-DATE AND P0016-EINDT < HIREDATE.
HIREDATE = P0016-EINDT.
ENDIF.
ENDIF.
IF P0016_OPTIONEN IS INITIAL OR P0016_OPTIONEN CS 'KONDT'.
IF P0016-KONDT <> INIT-DATE AND P0016-KONDT < HIREDATE.
HIREDATE = P0016-KONDT.
ENDIF.
ENDIF.
ENDPROVIDE.
ENDIF.
IF CHECK_INFOTYPES CS '0041'.
* Infotyp P0041 berücksichtigen
RP-READ-INFOTYPE PERSNR 0041 P0041 LOW-DATE HIGH-DATE.
PROVIDE * FROM P0041 BETWEEN LOW-DATE AND HIGH-DATE.
* XJG Unicode start
* DO 12 TIMES VARYING DAT FROM P0041-DAR01 NEXT P0041-DAR02
DO 12 TIMES VARYING DAT-dar FROM P0041-DAR01 NEXT P0041-DAR02
Varying dat-dat from p0041-dat01 next p0041-dat02.
* XJG Unicode ende
CHECK DAT-DAR = DATUMSART.
IF DAT-DAT < HIREDATE.
HIREDATE = DAT-DAT.
ENDIF.
ENDDO.
ENDPROVIDE.
ENDIF.
ENDFUNCTION.
边栏推荐
- 七.getchar 和 scanf
- Heap series_0x09: Example of heap corruption (illegal access + uninitialized + heap handle mismatch)
- 【服务器数据恢复】SAN LUN映射出错导致文件系统数据丢失的数据恢复案例
- 【MySQL】源码编译MySQL8.x+升级gcc+升级cmake(亲测完整版)
- SQL trill interview: send you a universal template, to?(key, each user to log on to the maximum number of consecutive monthly)
- Smart Light Pole Gateway Smart Transportation Application
- 开始记录自己的学习过程和目标
- 「我觉得AI领域乙烷」网友:你说的太多了,让AI来总结一下
- 【完美解决v-if导致echart不显示问题】
- ESP8266-Arduino编程实例-MQ-4气体传感器驱动
猜你喜欢

How bad can a programmer be?

MySQL 5.5系列安装步骤教程(图解版)

Smart Light Pole Gateway Smart Transportation Application

【挨踢(IT)初体验】

2022国赛Ezpop

微服务框架笔记(1)

国星光电吉利产业园项目主体结构全面封顶,将重点生产 RGB 小间距、Mini LED、TOP LED 等产品

开源星「001 号」落地 FlyFish,欢迎登陆赢神秘大礼包!

Detailed explanation of three pieces in C language

【燃】是时候展现真正的实力了!一文看懂2022华为开发者大赛技术亮点
随机推荐
AVL树的插入操作
四.数组传参
微信开发者工具报错,提示 未找到入口 app.json 文件
SQL抖音面试题:送你一个万能模板,要吗?(重点、每个用户每月连续登录的最大天数)
网络——数字数据编码
Numpy数组索引/切片 多维度索引
Leetcode 算法面试冲刺 热题 HOT 100 刷题(406 416 437 438 448)(六十九)
我的第一篇博客
分布式恢复【进阶篇】
MySQL进阶学习
OpenCV 图像变换之 —— 拉伸、收缩、扭曲和旋转
pgsql备份工具,哪个比较好?
5G NR Paging
Two ways to find the factorial of n
Nacos注册中心 Feign远程调用 Gateway服务网关
MySQL索引的B+树到底有多高?
开始记录自己的学习过程和目标
良匠-手把手教你写NFT抢购软(二)
一个程序员的水平能差到什么程度?
3种特征分箱方法!