当前位置:网站首页>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.
边栏推荐
猜你喜欢

Two ways to find the factorial of n

三.两数交换 空指针 && 野指针 解引用问题

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

想通这点,治好 AI 打工人的精神内耗

二.sizeof和strlen的区别

ECCV 2022 | BMD: 面向无源领域自适应的类平衡多中心动态原型策略

SQL抖音面试题:送你一个万能模板,要吗?(重点、每个用户每月连续登录的最大天数)

Selenium的安装

Heap series_0x0A: 3 methods to solve the heap overflow problem at once
Optimization of a piece of JDBC code (Part 1)
随机推荐
character rhombus code
【Web渗透】信息收集篇——Google搜索引擎(二)
网络——虚拟专用网和地址转换NAT
网络——数据交换方式
Detailed explanation of three pieces in C language
一个程序员的水平能差到什么程度?
margin:auto实现盒子水平垂直居中
三.两数交换 空指针 && 野指针 解引用问题
分布式恢复【进阶篇】
初识C语言(1)
总结了 110+ 公开专业数据集
网络——IPv6 vs IPv4
Foreword: About the author Dr. Wu Qiusheng and an introduction to the book
Chapter 4: Using Local Geospatial Data (4.6-4.14)
国星光电吉利产业园项目主体结构全面封顶,将重点生产 RGB 小间距、Mini LED、TOP LED 等产品
PHP 补全日期区间中缺少的日期/返回缺少的日期
[1413. Stepwise summation to get the minimum value of positive numbers]
Video chat source code - how to improve the quality of one-to-one live broadcast?
Heap series_0x0A: 3 methods to solve the heap overflow problem at once
Optimization of a piece of JDBC code (Part 1)