Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

HR ABAP Material

Former Member
0 Kudos
106

Hi All,

I am trying to learn HR-ABAP. Can any one sent me the material or any links..?

my mail id : mash217@gmail.com.

Thanks.

1 REPLY 1

Former Member
0 Kudos
65

Hi

HR:

HR deals with the INFOTYPES which are similar to Tables in General ABAP.

There are different ways of fetching data from these infotypes.

There are different areas in HR LIKE Personal Admn, Orgn Management, Benefits, Time amangement, Event Management, Payroll etc

Infotypes for these areas are different from one another area.

storing of records data in each type of area is different

LDBS like PNP are used in HR programing.

Instead of Select.. we use some ROUTINES and PROVIDE..ENDPROVIDE.. etc

and in the case of Pay roll we use Clusters and we Import and Export them for data fetching.

On the whole Normal ABAP is different from HR abap.

For Personal Admn the Infotypes start with PA0000 to PA1999

Time Related Infotypes start with PA2000 to PA2999.

Orgn related Infotypes start with HRP1000 to HRP1999.

All custom developed infotypes stsrat with PA9000 onwards.

In payroll processing we use Clusters like PCL1,2,3 and 4.

Instead of Select query we use PROVIDE and ENDPROVIDE..

You have to assign a Logical Database in the attributes PNP.

Go through the SAp doc for HR programming and start doing.

http://www.sapdevelopment.co.uk/hr/hrhome.htm

See:

http://help.sap.com/saphelp_46c/helpdata/en/4f/d5268a575e11d189270000e8322f96/content.htm

sites regarding hr-abap:

http://www.sapdevelopment.co.uk/hr/hrhome.htm

http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PAPA/PAPA.pdf

http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PAPD/PAPD.pdf

http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PYINT/PYINT_BASICS.pdf

http://www.atomhr.com/training/Technical_Topics_in_HR.htm

http://www.planetsap.com/hr_abap_main_page.htm

You can see some Standard Program examples in this one ...

http://www.sapdevelopment.co.uk/programs/programshr.htm

http://searchsap.techtarget.com/originalContent/0,289142,sid21_gci1030179,00.html?Offer=SAlgwn12604#...

http://www.erpgenie.com/faq/hr.htm.

http://www.planetsap.com/hr_abap_main_page.htm

http://www.sapbrain.com/TUTORIALS/FUNCTIONAL/HR_tutorial.html

These are the FAQ's that might helps you as well.

http://www.sap-img.com/human/hr-faq.htm

http://www.sapgenie.com/faq/hr.htm

http://www.planetsap.com/hr_abap_main_page.htm

http://www.atomhr.com/library_full.htm

HR Long texts Upload

Look at the below link

sample code

START-OF-SELECTION.

GET pernr.

rp_provide_from_frst p0000 space pn-begda pn-endda.

if pnp-sw-found EQ '1'.

READ TABLE p0001 WITH KEY pernr = p0000-pernr.

if sy-subrc = 0.

write : p0001-plans. " earliest.

endif.

endif.

rp_provide_from_last p0014 space pn-begda pn-endda.

if pnp-sw-found EQ '1'.

READ TABLE p0014 WITH KEY pernr = p0000-pernr.

if sy-subrc = 0.

write : p0014-LGART. .

endif.

endif.

The ABAP HR is an integral part of ABAP. Generally in ABAP the following are done:

1) Table development

2) Date Processin

3) Reprt developing

4) BAPIs /RFC s

5) Data base update

6) Screens development/enhancement

7) Scripts and smart forms.

😎 Function Building

9) Java connectors etc.

This is basically done through the PROGRAMMING in ABAP builder by using ABAP 4th generation languge. This may be related to any module of my SAP ERP 2004 like HR, FICO.SD,MM,CRM Etc.,

Now when it is said ABAP HR. It is the development of ABAP in the area of HR to meet the clients requirements according to the functional specifications .They may be in any area of HR like in the areas of time aspects ,pay aspects, OM aspects and Self Services like E-recruitment, ESS etc.,

One example of ABAP PROGRAMME related to HR is given below.

Report: ZP_POSTCODE: This report has been developed by the ABAPER in the area of SAP HR to Display report of employees by postcode that includes current traveling allowances (i.e. parking, permit or transport card etc.)

*:.....................................................................: :

*: Use: Help encourage the use of car sharing and public

  • transport wherever it appropriate (this is the functional requirement of the client or the functional specification

  • (which is given by the functional consultants) :

*:.....................................................................:

REPORT zp_postcode.

type-pools: slis. "ALV Declarations

NODES: pernr.

INFOTYPES: 0000, 0001, 0002, 0006, 0008, 0014, 0105, 0121.

SELECTION-SCREEN BEGIN OF BLOCK pcode WITH FRAME TITLE text-s01.

SELECT-OPTIONS: so_pcode FOR p0006-pstlz.

SELECTION-SCREEN END OF BLOCK pcode.

TYPES: BEGIN OF t_output,

pernr TYPE p0001-pernr, "personnel name

anredtxt TYPE t522t-atext, "title (based on p0002-anred)

fname TYPE p0002-vorna, "first name

lname TYPE p0002-nachn, "last name

orgtx TYPE t527x-orgtx, "dept

fte TYPE p0008-bsgrd, "fte

parking(20) TYPE c,

payslip TYPE t526-sachn, "payslip address

telno TYPE p0105-usrid_long, "tel number(p0105-usrty = 0020)

email TYPE p0105-usrid_long, "email (p0105-usrty = MAIL)

postcode type p0006-pstlz,

END OF t_output.

DATA: it_output TYPE STANDARD TABLE OF t_output INITIAL SIZE 0,

wa_output TYPE t_output.

*ALV data declarations

data: fieldcatalog type slis_t_fieldcat_alv with header line,

gd_tab_group type slis_t_sp_group_alv,

gd_layout type slis_layout_alv,

gd_repid like sy-repid,

gt_events type slis_t_event,

gd_prntparams type slis_print_alv,

gd_count(6) type n,

gd_outtext(70) type c,

gd_lines type i.

*START-OF-SELECTION.

START-OF-SELECTION.

clear: gd_count.

GET pernr.

  • Infotype 0121 is used to store multiple contracts for personnel.

  • Field p0121-hpern contains the personnel number for the main contract.

PROVIDE * from p0121 between pn-begda and pn-endda.

  • Check if main contract

if p0121-pernr ne p0121-hpern.

reject.

endif.

ENDPROVIDE.

add 1 to gd_count.

concatenate 'Processing personnel data'(m10) gd_count into gd_outtext

separated by ' '.

  • Display indicator for employee count

perform progress_indicator using gd_outtext.

  • Retrieve datd from infotypes

rp_provide_from_last p0000 space pn-begda pn-endda.

rp_provide_from_last p0001 space pn-begda pn-endda.

rp_provide_from_last p0002 space pn-begda pn-endda.

rp_provide_from_last p0006 space pn-begda pn-endda.

rp_provide_from_last p0008 space pn-begda pn-endda.

rp_provide_from_last p0014 space pn-begda pn-endda.

  • Check post code

CHECK p0006-pstlz IN so_pcode. "cp

  • Post code

wa_output-postcode = p0006-pstlz.

  • Personnel number

wa_output-pernr = pernr-pernr.

  • Personnel title

SELECT SINGLE atext

FROM t522t

INTO wa_output-anredtxt

WHERE sprsl EQ sy-langu AND

anred EQ p0002-anred.

  • First name

wa_output-fname = p0002-vorna.

  • Last name

wa_output-lname = p0002-nachn.

  • Organizational Unit text (dept)

SELECT SINGLE orgtx

FROM t527x

INTO wa_output-orgtx

WHERE sprsl EQ sy-langu AND

orgeh EQ p0001-orgeh AND

endda GE sy-datum.

  • FTE

wa_output-fte = p0008-bsgrd.

  • Parking / travel deducted?

CASE p0014-lgart.

WHEN '7180' OR '7181' OR '7182'.

wa_output-parking = text-002.

WHEN '7183'.

wa_output-parking = text-001.

WHEN '7171' OR '7172' or '7173' or '7174' or

'7175' or '7176' or '7177' or '7178'.

wa_output-parking = text-003.

ENDCASE.

  • Payslip Address

SELECT SINGLE sachn

FROM t526

INTO wa_output-payslip

WHERE werks EQ p0001-werks AND

sachx EQ p0001-sacha.

PROVIDE * from p0105 between pn-begda and pn-endda.

  • Telephone numbers

if p0105-usrty = '0020'.

wa_output-telno = p0105-usrid_long.

endif.

  • Email address

if p0105-usrty = 'MAIL'.

wa_output-email = p0105-usrid_long.

endif.

ENDPROVIDE.

append wa_output to it_output.

clear: wa_output.

*END-OF-SELECTION.

END-OF-SELECTION.

describe table it_output lines gd_lines.

if gd_lines gt 0.

perform build_fieldcatalog.

perform build_layout.

perform display_alv_report.

else.

message i003(zp) with 'No records found'.

endif.

&----


*& Form PROGRESS_INDICATOR

&----


  • Displays progress indicator on SAP screen

----


form progress_indicator using p_text.

call function 'SAPGUI_PROGRESS_INDICATOR'

exporting

  • PERCENTAGE = 0

text = p_text.

endform. " PROGRESS_INDICATOR

&----


*& Form BUILD_FIELDCATALOG

&----


  • Build Fieldcatalog for ALV Report

----


form build_fieldcatalog.

fieldcatalog-fieldname = 'PERNR'.

fieldcatalog-seltext_m = 'Personnel No.'.

fieldcatalog-col_pos = 0.

fieldcatalog-outputlen = 10.

  • fieldcatalog-emphasize = 'X'.

  • fieldcatalog-key = 'X'.

  • fieldcatalog-do_sum = 'X'.

  • fieldcatalog-no_zero = 'X'.

append fieldcatalog to fieldcatalog.

clear fieldcatalog.

fieldcatalog-fieldname = 'ANREDTXT'.

fieldcatalog-seltext_m = 'Title'.

fieldcatalog-col_pos = 1.

append fieldcatalog to fieldcatalog.

clear fieldcatalog.

fieldcatalog-fieldname = 'FNAME'.

fieldcatalog-seltext_m = 'First Name'.

fieldcatalog-col_pos = 2.

append fieldcatalog to fieldcatalog.

clear fieldcatalog.

fieldcatalog-fieldname = 'LNAME'.

fieldcatalog-seltext_m = 'Last Name'.

fieldcatalog-col_pos = 3.

append fieldcatalog to fieldcatalog.

clear fieldcatalog.

fieldcatalog-fieldname = 'ORGTX'.

fieldcatalog-seltext_m = 'Department'.

fieldcatalog-col_pos = 4.

append fieldcatalog to fieldcatalog.

clear fieldcatalog.

fieldcatalog-fieldname = 'FTE'.

fieldcatalog-seltext_m = 'FTE'.

fieldcatalog-col_pos = 5.

append fieldcatalog to fieldcatalog.

clear fieldcatalog.

fieldcatalog-fieldname = 'PARKING'.

fieldcatalog-seltext_m = 'Parking/Metrocard'.

fieldcatalog-col_pos = 6.

append fieldcatalog to fieldcatalog.

clear fieldcatalog.

fieldcatalog-fieldname = 'PAYSLIP'.

fieldcatalog-seltext_m = 'Payslip Add.'.

fieldcatalog-col_pos = 7.

append fieldcatalog to fieldcatalog.

clear fieldcatalog.

fieldcatalog-fieldname = 'TELNO'.

fieldcatalog-seltext_m = 'Telephone'.

fieldcatalog-col_pos = 8.

append fieldcatalog to fieldcatalog.

clear fieldcatalog.

fieldcatalog-fieldname = 'EMAIL'.

fieldcatalog-seltext_m = 'E-mail'.

fieldcatalog-col_pos = 9.

append fieldcatalog to fieldcatalog.

clear fieldcatalog.

fieldcatalog-fieldname = 'POSTCODE'.

fieldcatalog-seltext_m = 'Post code'.

fieldcatalog-col_pos = 10.

append fieldcatalog to fieldcatalog.

clear fieldcatalog.

endform. " BUILD_FIELDCATALOG

&----


*& Form BUILD_LAYOUT

&----


  • Build layout for ALV grid report

----


form build_layout.

gd_layout-no_input = 'X'.

gd_layout-colwidth_optimize = 'X'.

gd_layout-totals_text = 'Totals'(201).

gd_layout-zebra = 'X'.

endform. " BUILD_LAYOUT

&----


*& Form DISPLAY_ALV_REPORT

&----


  • Display report using ALV grid

----


form display_alv_report.

gd_repid = sy-repid.

call function 'REUSE_ALV_GRID_DISPLAY'

exporting

i_callback_program = gd_repid

is_layout = gd_layout

it_fieldcat = fieldcatalog[]

i_save = 'X'

tables

t_outtab = it_output

exceptions

program_error = 1

others = 2.

if sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

endif.

endform. " DISPLAY_ALV_REPORT

sites regarding hr-abap:

http://www.sapdevelopment.co.uk/hr/hrhome.htm

http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PAPA/PAPA.pdf

http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PAPD/PAPD.pdf

http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PYINT/PYINT_BASICS.pdf

http://www.atomhr.com/training/Technical_Topics_in_HR.htm

http://www.planetsap.com/hr_abap_main_page.htm

You can see some Standard Program examples in this one ...

http://www.sapdevelopment.co.uk/programs/programshr.htm

http://searchsap.techtarget.com/originalContent/0,289142,sid21_gci1030179,00.html?Offer=SAlgwn12604#...

http://www.erpgenie.com/faq/hr.htm.

http://www.planetsap.com/hr_abap_main_page.htm

http://www.sapbrain.com/TUTORIALS/FUNCTIONAL/HR_tutorial.html

These are the FAQ's that might helps you as well.

http://www.sap-img.com/human/hr-faq.htm

http://www.sapgenie.com/faq/hr.htm

http://www.planetsap.com/hr_abap_main_page.htm

http://www.atomhr.com/library_full.htm