Application Development and Automation 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: 
Read only

function module for reading payroll results

dani_mn
Active Contributor
0 Likes
4,269

HI,

I need a function module for reading payroll results RT table.

Import parameters are personal number, payroll area, and payroll period.

Export should be RT table.

Regards,

Wasim Ahmed

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
1,383

Hi wasim,

1. use this code (just copy paste)

use ur own values for

mypernr, fpper, basic wage type (1000 in our case)

2.

REPORT abc.

*----- Data

DATA : myseqnr LIKE hrpy_rgdir-seqnr.

DATA: py_result TYPE payin_result.

DATA : mypernr LIKE p0001-pernr.

DATA : wpbp LIKE TABLE OF pc205 WITH HEADER LINE.

DATA : myrt LIKE TABLE OF pc207 WITH HEADER LINE.

*------- Read Directory

SELECT SINGLE seqnr INTO myseqnr

FROM hrpy_rgdir

WHERE pernr = mypernr

AND fpper = '200601'

AND srtza = 'A'.

CHECK sy-subrc = 0.

*----


Read Results

CALL FUNCTION 'PYXX_READ_PAYROLL_RESULT'

EXPORTING

clusterid = 'IN'

employeenumber = mypernr

sequencenumber = myseqnr

CHANGING

payroll_result = py_result

EXCEPTIONS

illegal_isocode_or_clusterid = 1

error_generating_import = 2

import_mismatch_error = 3

subpool_dir_full = 4

no_read_authority = 5

no_record_found = 6

versions_do_not_match = 7

error_reading_archive = 8

error_reading_relid = 9

OTHERS = 10.

IF sy-subrc <> 0.

ENDIF.

myrt[] = py_result-inter-rt .

*----


READ TABLE myrt WITH KEY lgart = '1000'.

regards,

amit m.

3 REPLIES 3
Read only

Former Member
0 Likes
1,384

Hi wasim,

1. use this code (just copy paste)

use ur own values for

mypernr, fpper, basic wage type (1000 in our case)

2.

REPORT abc.

*----- Data

DATA : myseqnr LIKE hrpy_rgdir-seqnr.

DATA: py_result TYPE payin_result.

DATA : mypernr LIKE p0001-pernr.

DATA : wpbp LIKE TABLE OF pc205 WITH HEADER LINE.

DATA : myrt LIKE TABLE OF pc207 WITH HEADER LINE.

*------- Read Directory

SELECT SINGLE seqnr INTO myseqnr

FROM hrpy_rgdir

WHERE pernr = mypernr

AND fpper = '200601'

AND srtza = 'A'.

CHECK sy-subrc = 0.

*----


Read Results

CALL FUNCTION 'PYXX_READ_PAYROLL_RESULT'

EXPORTING

clusterid = 'IN'

employeenumber = mypernr

sequencenumber = myseqnr

CHANGING

payroll_result = py_result

EXCEPTIONS

illegal_isocode_or_clusterid = 1

error_generating_import = 2

import_mismatch_error = 3

subpool_dir_full = 4

no_read_authority = 5

no_record_found = 6

versions_do_not_match = 7

error_reading_archive = 8

error_reading_relid = 9

OTHERS = 10.

IF sy-subrc <> 0.

ENDIF.

myrt[] = py_result-inter-rt .

*----


READ TABLE myrt WITH KEY lgart = '1000'.

regards,

amit m.

Read only

Former Member
0 Likes
1,383

HI

GOOD

CHECK WITH THIS FUNCTION MODULE =>

CALL FUNCTION 'PYXX_READ_PAYROLL_RESULT'

EXPORTING

CLUSTERID = 'RX'

EMPLOYEENUMBER = P_PERNR

SEQUENCENUMBER = RGDIR-SEQNR

  • READ_ONLY_BUFFER = ' '

  • READ_ONLY_INTERNATIONAL = ' '

  • CHECK_READ_AUTHORITY = 'X'

  • FILTER_CUMULATIONS = 'X'

  • CLIENT =

  • IMPORTING

  • VERSION_NUMBER_PAYVN =

  • VERSION_NUMBER_PCL2 =

CHANGING

PAYROLL_RESULT = ref_payresult

EXCEPTIONS

ILLEGAL_ISOCODE_OR_CLUSTERID = 1

ERROR_GENERATING_IMPORT = 2

IMPORT_MISMATCH_ERROR = 3

SUBPOOL_DIR_FULL = 4

NO_READ_AUTHORITY = 5

NO_RECORD_FOUND = 6

VERSIONS_DO_NOT_MATCH = 7

OTHERS = 8 .

GO THROUGH THIS LINK

http://fuller.mit.edu/hr/cluster_tables.html

THANKS

MRUTYUN

Read only

Former Member
0 Likes
1,383

Hai Wasim

Check the following Code

data: payroll_cluster like t500l-relid.

call function 'PYXX_READ_PAYROLL_RESULT'

exporting

clusterid = payroll_cluster

employeenumber = pernr-pernr

sequencenumber = payroll-evp-seqnr

  • READ_ONLY_BUFFER = ' '

  • READ_ONLY_INTERNATIONAL = ' '

  • CHECK_READ_AUTHORITY = 'X'

  • IMPORTING

  • VERSION_NUMBER_PAYVN =

  • VERSION_NUMBER_PCL2 =

changing

payroll_result = payroll_us

exceptions

illegal_isocode_or_clusterid = 1

error_generating_import = 2

import_mismatch_error = 3

subpool_dir_full = 4

no_read_authority = 5

no_record_found = 6

versions_do_not_match = 7

others = 8

.

if sy-subrc <> 0.

if sy-subrc <> 0.

write: / 'Fehler beim Laden des US Abrechnungsergebnisses'(003).

write: /'zu Personalnummer'(008), pernr-pernr,

'bei Sequence-Number'(012),

payroll-evp-seqnr.

write: / 'Fehlercode ='(004), sy-subrc.

endif.

endif.

Thanks & regards

Sreenivasulu P