List of Employees Who Have Completed Certain Yrs of Service
List of Employees Who Have Completed Certain Yrs of Service
A D V E R T I S E M E N T
*&---------------------------------------------------------------------*
*& Report ZPV003HR_ANIV_EMP
*&---------------------------------------------------------------------*
REPORT zpv003hr_aniv_emp .
TABLES: pernr.
INFOTYPES: 0002,
0001.
DATA: age TYPE d,
serv TYPE d,
curdate TYPE d.
DATA: years TYPE d,
enddate TYPE d .
DATA: BEGIN OF int_empinfo OCCURS 0,
pernr LIKE p0002-pernr,
nachn LIKE p0002-nachn,
vorna LIKE p0002-vorna,
gbdat LIKE p0002-gbdat,
begda LIKE p0001-begda,
emp_age TYPE d,
emp_serv TYPE d,
END OF int_empinfo.
SELECTION-SCREEN BEGIN OF BLOCK block1 WITH FRAME TITLE text-001.
PARAMETERS: 5_years RADIOBUTTON GROUP g1 DEFAULT 'X',
10_years RADIOBUTTON GROUP g1,
15_years RADIOBUTTON GROUP g1.
*curdate type d DEFAULT '00050101' .
SELECTION-SCREEN END OF BLOCK block1.
START-OF-SELECTION .
IF 5_years = 'X'.
curdate = '00050101'.
ELSEIF 10_years = 'X'.
curdate = '00100101'.
ELSEIF 15_years = 'X'.
curdate = '00150101'.
ENDIF.
GET pernr.
PERFORM get_0002.
PERFORM get_0001.
IF int_empinfo-emp_serv NE '00000000'.
APPEND int_empinfo.
ENDIF.
END-OF-SELECTION.
IF int_empinfo[] IS INITIAL.
WRITE:/ 'NO EMPLOYEE WITH', curdate+2(2), 'YEARS OF SERVICE' COLOR 6
.
ENDIF.
PERFORM write_empinfo.
*&---------------------------------------------------------------------*
*& Form get_0002
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM get_0002 .
rp-provide-from-last p0002 space pn-begda pn-endda.
IF pnp-sw-found EQ '1'. "record found
age = sy-datum - p0002-gbdat.
MOVE:
p0002-pernr TO int_empinfo-pernr,
p0002-vorna TO int_empinfo-vorna,
p0002-nachn TO int_empinfo-nachn,
p0002-gbdat TO int_empinfo-gbdat,
age TO int_empinfo-emp_age.
ELSE.
REJECT.
ENDIF.
ENDFORM. " get_0002
*&---------------------------------------------------------------------*
*& Form write_empinfo
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM write_empinfo .
LOOP AT int_empinfo.
WRITE:/
int_empinfo-pernr,
20 int_empinfo-nachn,
35 int_empinfo-vorna,
50 int_empinfo-gbdat,
75 int_empinfo-emp_age+2(2),
85 int_empinfo-emp_serv+2(2) .
ENDLOOP.
ENDFORM. " write_empinfo
*&---------------------------------------------------------------------*
*& Form get_1001
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM get_0001 .
rp-provide-from-last p0001 space pn-begda pn-endda.
IF pnp-sw-found EQ '1'. "record found
enddate = p0001-endda .
years = sy-datum - p0001-begda.
IF years > curdate AND enddate >= '99991231' .
MOVE:
years TO int_empinfo-emp_serv.
ENDIF.
ELSE.
REJECT.
ENDIF.
ENDFORM. " get_1001
TOP-OF-PAGE.
WRITE:/
'EMP_PERNR',
20 'LAST_NAME',
35 'FIRST_NAME',
50 'DOB',
75 'EMP_AGE',
85 'EMP_SERVICE' .
ULINE.
No Human Resource Articles could be found as of now.
Share And Enjoy:These icons link to social bookmarking sites where readers can share and discover new web pages.
Keywords:
List of Employees Who Have Completed Certain Yrs of Service, SAP Human Resource, SAP HUMAN RESOURCE, SAP Human Resource tutorial, SAP Human Resource tutorial pdf, history of SAP Human Resource, learn SAP Human Resource