最近正在编几张HR的报表,把用到的一些BAPI和FM整理一下
- 读取信息类型
主要用来读取 “P” 人事关系信息类型方面的数据。
CALL FUNCTION 'HR_READ_INFOTYPE'
EXPORTING
TCLAS = 'A'
PERNR = L_OBJID
INFTY = '0001'
BEGDA = SY-DATUM
ENDDA = SY-DATUM
TABLES
INFTY_TAB = P0001
其中 TCLAS " A = employee, B = applicant
INFTY " infotype
PERNR " employee number
主要是读取组织管理信息类型方面的数据。
CALL FUNCTION 'RH_READ_INFTY'
* EXPORTING
* AUTHORITY = 'DISP'
* WITH_STRU_AUTH = 'X'
* PLVAR =
* OTYPE =
* OBJID =
* INFTY = ' '
* ISTAT = ' '
* EXTEND = 'X'
* SUBTY = ' '
* BEGDA = '19000101'
* ENDDA = '99991231'
* CONDITION = '00000'
* INFTB = '1'
* SORT = 'X'
* VIA_T777D = ' '
TABLES
INNNN =
* OBJECTS =
* EXCEPTIONS
* ALL_INFTY_WITH_SUBTY = 1
* NOTHING_FOUND = 2
* NO_OBJECTS = 3
* WRONG_CONDITION = 4
* WRONG_PARAMETERS = 5
* OTHERS = 6
其中 OBJID “employee number - 读取RT表
× 读取RGDIR
根据读出的记录读出最符合条件的一条。
CALL FUNCTION 'CU_READ_RGDIR'
EXPORTING
PERSNR = L_PERNR
TABLES
IN_RGDIR = TAB_IN_RGDIR
LOOP AT TAB_IN_RGDIR WHERE SRTZA = 'A' AND FPPER = L_FPPER.
L_SEQNR = TAB_IN_RGDIR-SEQNR.
ENDLOOP.
×读PAYROLL表
CALL FUNCTION 'PYXX_READ_PAYROLL_RESULT'
EXPORTING
EMPLOYEENUMBER = L_PERNR2
SEQUENCENUMBER = L_SEQNR
CHECK_READ_AUTHORITY = 'X'
CHANGING
PAYROLL_RESULT = L_PY_RESULT - 和时间有关的FM
×根据当前月的开始日,得到结束日
CALL FUNCTION 'SLS_MISC_GET_LAST_DAY_OF_MONTH'
EXPORTING
DAY_IN = SY-DATUM
IMPORTING
LAST_DAY_OF_MONTH = G_ENDDA
×取得时间文本
CALL FUNCTION 'ZFUN0012'
EXPORTING
I_DATE = PN-BEGDA
IMPORTING
E_DATE_TEXT = BEGDA_TEXT. - 读取标准工时
CALL FUNCTION 'HR_PERSONAL_WORK_SCHEDULE'
EXPORTING
PERNR = REC_PER-PERNR
BEGDA = PN-BEGDA
ENDDA = PN-ENDDA
TABLES
PERWS = TAB_PERWS - 读取跨月情况下的缺勤时数
CALL FUNCTION 'HR_PERSONAL_WORK_SCHEDULE'
EXPORTING
PERNR = PERNR-PERNR
BEGDA = L_BEGDA
ENDDA = L_ENDDA
TABLES
PERWS = L_TAB_PERWS
LOOP AT L_TAB_PERWS.
P_STDAZ = P_STDAZ + L_TAB_PERWS-STDAZ.
ENDLOOP. - 用ALV方式展现
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = SY-REPID
IS_LAYOUT = L_LAYOUT
IT_FIELDCAT = L_TAB_FIELDCAT
I_GRID_TITLE = L_TITLE
TABLES
T_OUTTAB = L_TAB_DATA - 等待补充...
本文介绍在人力资源(HR)报表编制中使用的关键SAP函数模块(FM),包括读取员工信息类型、组织管理数据及薪酬结果等。展示了如何通过特定FM获取个人工作计划、缺勤时长等,并利用ALV展示数据。
312

被折叠的 条评论
为什么被折叠?



